.set noat # allow manual use of $at .set noreorder # don't insert nops after branches glabel func_8004D1B4 /* 285B4 8004D1B4 8CA20000 */ lw $v0, ($a1) /* 285B8 8004D1B8 90470002 */ lbu $a3, 2($v0) /* 285BC 8004D1BC 90430000 */ lbu $v1, ($v0) /* 285C0 8004D1C0 90440001 */ lbu $a0, 1($v0) /* 285C4 8004D1C4 24420003 */ addiu $v0, $v0, 3 /* 285C8 8004D1C8 ACA20000 */ sw $v0, ($a1) /* 285CC 8004D1CC 00031A00 */ sll $v1, $v1, 8 /* 285D0 8004D1D0 00832021 */ addu $a0, $a0, $v1 /* 285D4 8004D1D4 10E00003 */ beqz $a3, .L8004D1E4 /* 285D8 8004D1D8 0080302D */ daddu $a2, $a0, $zero /* 285DC 8004D1DC 00071200 */ sll $v0, $a3, 8 /* 285E0 8004D1E0 344700FF */ ori $a3, $v0, 0xff .L8004D1E4: /* 285E4 8004D1E4 00041400 */ sll $v0, $a0, 0x10 /* 285E8 8004D1E8 58400001 */ blezl $v0, .L8004D1F0 /* 285EC 8004D1EC 24060001 */ addiu $a2, $zero, 1 .L8004D1F0: /* 285F0 8004D1F0 8CA2006C */ lw $v0, 0x6c($a1) /* 285F4 8004D1F4 00071C00 */ sll $v1, $a3, 0x10 /* 285F8 8004D1F8 00621823 */ subu $v1, $v1, $v0 /* 285FC 8004D1FC 00061400 */ sll $v0, $a2, 0x10 /* 28600 8004D200 00021403 */ sra $v0, $v0, 0x10 /* 28604 8004D204 14400002 */ bnez $v0, .L8004D210 /* 28608 8004D208 0062001A */ div $zero, $v1, $v0 /* 2860C 8004D20C 0007000D */ break 7 .L8004D210: /* 28610 8004D210 2401FFFF */ addiu $at, $zero, -1 /* 28614 8004D214 14410004 */ bne $v0, $at, .L8004D228 /* 28618 8004D218 3C018000 */ lui $at, 0x8000 /* 2861C 8004D21C 14610002 */ bne $v1, $at, .L8004D228 /* 28620 8004D220 00000000 */ nop /* 28624 8004D224 0006000D */ break 6 .L8004D228: /* 28628 8004D228 00001812 */ mflo $v1 /* 2862C 8004D22C A4A60074 */ sh $a2, 0x74($a1) /* 28630 8004D230 A4A70076 */ sh $a3, 0x76($a1) /* 28634 8004D234 03E00008 */ jr $ra /* 28638 8004D238 ACA30070 */ sw $v1, 0x70($a1)