.set noat # allow manual use of $at .set noreorder # don't insert nops after branches glabel func_8004EC68 /* 2A068 8004EC68 27BDFFA8 */ addiu $sp, $sp, -0x58 /* 2A06C 8004EC6C AFB40040 */ sw $s4, 0x40($sp) /* 2A070 8004EC70 0080A02D */ daddu $s4, $a0, $zero /* 2A074 8004EC74 AFBF0054 */ sw $ra, 0x54($sp) /* 2A078 8004EC78 AFBE0050 */ sw $fp, 0x50($sp) /* 2A07C 8004EC7C AFB7004C */ sw $s7, 0x4c($sp) /* 2A080 8004EC80 AFB60048 */ sw $s6, 0x48($sp) /* 2A084 8004EC84 AFB50044 */ sw $s5, 0x44($sp) /* 2A088 8004EC88 AFB3003C */ sw $s3, 0x3c($sp) /* 2A08C 8004EC8C AFB20038 */ sw $s2, 0x38($sp) /* 2A090 8004EC90 AFB10034 */ sw $s1, 0x34($sp) /* 2A094 8004EC94 AFB00030 */ sw $s0, 0x30($sp) /* 2A098 8004EC98 AFA00010 */ sw $zero, 0x10($sp) /* 2A09C 8004EC9C 8E8200BC */ lw $v0, 0xbc($s4) /* 2A0A0 8004ECA0 10400011 */ beqz $v0, .L8004ECE8 /* 2A0A4 8004ECA4 A3A00028 */ sb $zero, 0x28($sp) /* 2A0A8 8004ECA8 2442FFFF */ addiu $v0, $v0, -1 /* 2A0AC 8004ECAC 14400005 */ bnez $v0, .L8004ECC4 /* 2A0B0 8004ECB0 AE8200BC */ sw $v0, 0xbc($s4) /* 2A0B4 8004ECB4 8E8200B8 */ lw $v0, 0xb8($s4) /* 2A0B8 8004ECB8 AE8000B8 */ sw $zero, 0xb8($s4) /* 2A0BC 8004ECBC 08013B34 */ j .L8004ECD0 /* 2A0C0 8004ECC0 AE8000B4 */ sw $zero, 0xb4($s4) .L8004ECC4: /* 2A0C4 8004ECC4 8E8200B0 */ lw $v0, 0xb0($s4) /* 2A0C8 8004ECC8 8E8300B4 */ lw $v1, 0xb4($s4) /* 2A0CC 8004ECCC 00431021 */ addu $v0, $v0, $v1 .L8004ECD0: /* 2A0D0 8004ECD0 AE8200B0 */ sw $v0, 0xb0($s4) /* 2A0D4 8004ECD4 8E8300B0 */ lw $v1, 0xb0($s4) /* 2A0D8 8004ECD8 00031080 */ sll $v0, $v1, 2 /* 2A0DC 8004ECDC 00431021 */ addu $v0, $v0, $v1 /* 2A0E0 8004ECE0 00021040 */ sll $v0, $v0, 1 /* 2A0E4 8004ECE4 AE820008 */ sw $v0, 8($s4) .L8004ECE8: /* 2A0E8 8004ECE8 8E8200CC */ lw $v0, 0xcc($s4) /* 2A0EC 8004ECEC 1040000D */ beqz $v0, .L8004ED24 /* 2A0F0 8004ECF0 2442FFFF */ addiu $v0, $v0, -1 /* 2A0F4 8004ECF4 14400005 */ bnez $v0, .L8004ED0C /* 2A0F8 8004ECF8 AE8200CC */ sw $v0, 0xcc($s4) /* 2A0FC 8004ECFC 8E8200C8 */ lw $v0, 0xc8($s4) /* 2A100 8004ED00 AE8000C8 */ sw $zero, 0xc8($s4) /* 2A104 8004ED04 08013B46 */ j .L8004ED18 /* 2A108 8004ED08 AE8000C4 */ sw $zero, 0xc4($s4) .L8004ED0C: /* 2A10C 8004ED0C 8E8200C0 */ lw $v0, 0xc0($s4) /* 2A110 8004ED10 8E8300C4 */ lw $v1, 0xc4($s4) /* 2A114 8004ED14 00431021 */ addu $v0, $v0, $v1 .L8004ED18: /* 2A118 8004ED18 AE8200C0 */ sw $v0, 0xc0($s4) /* 2A11C 8004ED1C 240B0001 */ addiu $t3, $zero, 1 /* 2A120 8004ED20 AFAB0010 */ sw $t3, 0x10($sp) .L8004ED24: /* 2A124 8004ED24 8E820204 */ lw $v0, 0x204($s4) /* 2A128 8004ED28 1040003B */ beqz $v0, .L8004EE18 /* 2A12C 8004ED2C A280021A */ sb $zero, 0x21a($s4) /* 2A130 8004ED30 92820232 */ lbu $v0, 0x232($s4) /* 2A134 8004ED34 1040001D */ beqz $v0, .L8004EDAC /* 2A138 8004ED38 2411000F */ addiu $s1, $zero, 0xf /* 2A13C 8004ED3C 24160030 */ addiu $s6, $zero, 0x30 .L8004ED40: /* 2A140 8004ED40 8E820204 */ lw $v0, 0x204($s4) /* 2A144 8004ED44 90570000 */ lbu $s7, ($v0) /* 2A148 8004ED48 24420001 */ addiu $v0, $v0, 1 /* 2A14C 8004ED4C 12E00030 */ beqz $s7, .L8004EE10 /* 2A150 8004ED50 AE820204 */ sw $v0, 0x204($s4) /* 2A154 8004ED54 0040182D */ daddu $v1, $v0, $zero /* 2A158 8004ED58 00171040 */ sll $v0, $s7, 1 /* 2A15C 8004ED5C 00571021 */ addu $v0, $v0, $s7 /* 2A160 8004ED60 00021140 */ sll $v0, $v0, 5 /* 2A164 8004ED64 244201FC */ addiu $v0, $v0, 0x1fc /* 2A168 8004ED68 02828021 */ addu $s0, $s4, $v0 /* 2A16C 8004ED6C A69600D4 */ sh $s6, 0xd4($s4) /* 2A170 8004ED70 90620000 */ lbu $v0, ($v1) /* 2A174 8004ED74 24630001 */ addiu $v1, $v1, 1 /* 2A178 8004ED78 AE830204 */ sw $v1, 0x204($s4) /* 2A17C 8004ED7C A28200D6 */ sb $v0, 0xd6($s4) /* 2A180 8004ED80 8E020000 */ lw $v0, ($s0) /* 2A184 8004ED84 10400005 */ beqz $v0, .L8004ED9C /* 2A188 8004ED88 0220102D */ daddu $v0, $s1, $zero /* 2A18C 8004ED8C 0280202D */ daddu $a0, $s4, $zero /* 2A190 8004ED90 0C013FB4 */ jal func_8004FED0 /* 2A194 8004ED94 0200282D */ daddu $a1, $s0, $zero /* 2A198 8004ED98 0220102D */ daddu $v0, $s1, $zero .L8004ED9C: /* 2A19C 8004ED9C 1440FFE8 */ bnez $v0, .L8004ED40 /* 2A1A0 8004EDA0 2631FFFF */ addiu $s1, $s1, -1 /* 2A1A4 8004EDA4 08013B85 */ j .L8004EE14 /* 2A1A8 8004EDA8 AE800204 */ sw $zero, 0x204($s4) .L8004EDAC: /* 2A1AC 8004EDAC 24160030 */ addiu $s6, $zero, 0x30 .L8004EDB0: /* 2A1B0 8004EDB0 8E820204 */ lw $v0, 0x204($s4) /* 2A1B4 8004EDB4 90570000 */ lbu $s7, ($v0) /* 2A1B8 8004EDB8 24420001 */ addiu $v0, $v0, 1 /* 2A1BC 8004EDBC 12E00014 */ beqz $s7, .L8004EE10 /* 2A1C0 8004EDC0 AE820204 */ sw $v0, 0x204($s4) /* 2A1C4 8004EDC4 00171040 */ sll $v0, $s7, 1 /* 2A1C8 8004EDC8 00571021 */ addu $v0, $v0, $s7 /* 2A1CC 8004EDCC 00021140 */ sll $v0, $v0, 5 /* 2A1D0 8004EDD0 244201FC */ addiu $v0, $v0, 0x1fc /* 2A1D4 8004EDD4 8E830204 */ lw $v1, 0x204($s4) /* 2A1D8 8004EDD8 02828021 */ addu $s0, $s4, $v0 /* 2A1DC 8004EDDC A69600D4 */ sh $s6, 0xd4($s4) /* 2A1E0 8004EDE0 A28000D6 */ sb $zero, 0xd6($s4) /* 2A1E4 8004EDE4 24630001 */ addiu $v1, $v1, 1 /* 2A1E8 8004EDE8 AE830204 */ sw $v1, 0x204($s4) /* 2A1EC 8004EDEC 8E020000 */ lw $v0, ($s0) /* 2A1F0 8004EDF0 10400005 */ beqz $v0, .L8004EE08 /* 2A1F4 8004EDF4 0220102D */ daddu $v0, $s1, $zero /* 2A1F8 8004EDF8 0280202D */ daddu $a0, $s4, $zero /* 2A1FC 8004EDFC 0C013FB4 */ jal func_8004FED0 /* 2A200 8004EE00 0200282D */ daddu $a1, $s0, $zero /* 2A204 8004EE04 0220102D */ daddu $v0, $s1, $zero .L8004EE08: /* 2A208 8004EE08 1440FFE9 */ bnez $v0, .L8004EDB0 /* 2A20C 8004EE0C 2631FFFF */ addiu $s1, $s1, -1 .L8004EE10: /* 2A210 8004EE10 AE800204 */ sw $zero, 0x204($s4) .L8004EE14: /* 2A214 8004EE14 A2800232 */ sb $zero, 0x232($s4) .L8004EE18: /* 2A218 8004EE18 0000B82D */ daddu $s7, $zero, $zero /* 2A21C 8004EE1C 00171040 */ sll $v0, $s7, 1 .L8004EE20: /* 2A220 8004EE20 00571021 */ addu $v0, $v0, $s7 /* 2A224 8004EE24 00021140 */ sll $v0, $v0, 5 /* 2A228 8004EE28 2442025C */ addiu $v0, $v0, 0x25c /* 2A22C 8004EE2C 02828021 */ addu $s0, $s4, $v0 /* 2A230 8004EE30 8E020000 */ lw $v0, ($s0) /* 2A234 8004EE34 5040034E */ beql $v0, $zero, .L8004FB70 /* 2A238 8004EE38 26F70001 */ addiu $s7, $s7, 1 /* 2A23C 8004EE3C AE000040 */ sw $zero, 0x40($s0) /* 2A240 8004EE40 8FAB0010 */ lw $t3, 0x10($sp) /* 2A244 8004EE44 15600004 */ bnez $t3, .L8004EE58 /* 2A248 8004EE48 240B0001 */ addiu $t3, $zero, 1 /* 2A24C 8004EE4C 8282021A */ lb $v0, 0x21a($s4) /* 2A250 8004EE50 50400002 */ beql $v0, $zero, .L8004EE5C /* 2A254 8004EE54 A2000041 */ sb $zero, 0x41($s0) .L8004EE58: /* 2A258 8004EE58 A20B0041 */ sb $t3, 0x41($s0) .L8004EE5C: /* 2A25C 8004EE5C 8E020024 */ lw $v0, 0x24($s0) /* 2A260 8004EE60 1040000C */ beqz $v0, .L8004EE94 /* 2A264 8004EE64 2442FFFF */ addiu $v0, $v0, -1 /* 2A268 8004EE68 14400004 */ bnez $v0, .L8004EE7C /* 2A26C 8004EE6C AE020024 */ sw $v0, 0x24($s0) /* 2A270 8004EE70 8E020020 */ lw $v0, 0x20($s0) /* 2A274 8004EE74 08013BA3 */ j .L8004EE8C /* 2A278 8004EE78 AE020018 */ sw $v0, 0x18($s0) .L8004EE7C: /* 2A27C 8004EE7C 8E020018 */ lw $v0, 0x18($s0) /* 2A280 8004EE80 8E03001C */ lw $v1, 0x1c($s0) /* 2A284 8004EE84 00431021 */ addu $v0, $v0, $v1 /* 2A288 8004EE88 AE020018 */ sw $v0, 0x18($s0) .L8004EE8C: /* 2A28C 8004EE8C 240B0001 */ addiu $t3, $zero, 1 /* 2A290 8004EE90 A20B0041 */ sb $t3, 0x41($s0) .L8004EE94: /* 2A294 8004EE94 86020036 */ lh $v0, 0x36($s0) /* 2A298 8004EE98 96030036 */ lhu $v1, 0x36($s0) /* 2A29C 8004EE9C 1040000E */ beqz $v0, .L8004EED8 /* 2A2A0 8004EEA0 2462FFFF */ addiu $v0, $v1, -1 /* 2A2A4 8004EEA4 A6020036 */ sh $v0, 0x36($s0) /* 2A2A8 8004EEA8 00021400 */ sll $v0, $v0, 0x10 /* 2A2AC 8004EEAC 14400004 */ bnez $v0, .L8004EEC0 /* 2A2B0 8004EEB0 00000000 */ nop /* 2A2B4 8004EEB4 86020034 */ lh $v0, 0x34($s0) /* 2A2B8 8004EEB8 08013BB3 */ j .L8004EECC /* 2A2BC 8004EEBC 00021400 */ sll $v0, $v0, 0x10 .L8004EEC0: /* 2A2C0 8004EEC0 8E02002C */ lw $v0, 0x2c($s0) /* 2A2C4 8004EEC4 8E030030 */ lw $v1, 0x30($s0) /* 2A2C8 8004EEC8 00431021 */ addu $v0, $v0, $v1 .L8004EECC: /* 2A2CC 8004EECC AE02002C */ sw $v0, 0x2c($s0) /* 2A2D0 8004EED0 240B0001 */ addiu $t3, $zero, 1 /* 2A2D4 8004EED4 A20B0041 */ sb $t3, 0x41($s0) .L8004EED8: /* 2A2D8 8004EED8 8E020028 */ lw $v0, 0x28($s0) /* 2A2DC 8004EEDC 2442FFFF */ addiu $v0, $v0, -1 /* 2A2E0 8004EEE0 1C400250 */ bgtz $v0, .L8004F824 /* 2A2E4 8004EEE4 AE020028 */ sw $v0, 0x28($s0) /* 2A2E8 8004EEE8 920B0052 */ lbu $t3, 0x52($s0) /* 2A2EC 8004EEEC 1440024D */ bnez $v0, .L8004F824 /* 2A2F0 8004EEF0 A3AB001F */ sb $t3, 0x1f($sp) .L8004EEF4: /* 2A2F4 8004EEF4 8E020000 */ lw $v0, ($s0) /* 2A2F8 8004EEF8 90470000 */ lbu $a3, ($v0) /* 2A2FC 8004EEFC 24420001 */ addiu $v0, $v0, 1 /* 2A300 8004EF00 AE020000 */ sw $v0, ($s0) /* 2A304 8004EF04 8602003E */ lh $v0, 0x3e($s0) /* 2A308 8004EF08 9603003E */ lhu $v1, 0x3e($s0) /* 2A30C 8004EF0C 10400007 */ beqz $v0, .L8004EF2C /* 2A310 8004EF10 2462FFFF */ addiu $v0, $v1, -1 /* 2A314 8004EF14 A602003E */ sh $v0, 0x3e($s0) /* 2A318 8004EF18 00021400 */ sll $v0, $v0, 0x10 /* 2A31C 8004EF1C 14400004 */ bnez $v0, .L8004EF30 /* 2A320 8004EF20 00071600 */ sll $v0, $a3, 0x18 /* 2A324 8004EF24 8E020004 */ lw $v0, 4($s0) /* 2A328 8004EF28 AE020000 */ sw $v0, ($s0) .L8004EF2C: /* 2A32C 8004EF2C 00071600 */ sll $v0, $a3, 0x18 .L8004EF30: /* 2A330 8004EF30 0440002B */ bltz $v0, .L8004EFE0 /* 2A334 8004EF34 30E300FF */ andi $v1, $a3, 0xff /* 2A338 8004EF38 14600009 */ bnez $v1, .L8004EF60 /* 2A33C 8004EF3C 2C620078 */ sltiu $v0, $v1, 0x78 /* 2A340 8004EF40 8E020008 */ lw $v0, 8($s0) /* 2A344 8004EF44 10400004 */ beqz $v0, .L8004EF58 /* 2A348 8004EF48 240B0001 */ addiu $t3, $zero, 1 /* 2A34C 8004EF4C AE020000 */ sw $v0, ($s0) /* 2A350 8004EF50 08013E06 */ j .L8004F818 /* 2A354 8004EF54 AE000008 */ sw $zero, 8($s0) .L8004EF58: /* 2A358 8004EF58 08013E09 */ j .L8004F824 /* 2A35C 8004EF5C A3AB0028 */ sb $t3, 0x28($sp) .L8004EF60: /* 2A360 8004EF60 5440022D */ bnel $v0, $zero, .L8004F818 /* 2A364 8004EF64 AE030028 */ sw $v1, 0x28($s0) /* 2A368 8004EF68 8E020000 */ lw $v0, ($s0) /* 2A36C 8004EF6C 90430000 */ lbu $v1, ($v0) /* 2A370 8004EF70 24420001 */ addiu $v0, $v0, 1 /* 2A374 8004EF74 AE020000 */ sw $v0, ($s0) /* 2A378 8004EF78 30E20007 */ andi $v0, $a3, 7 /* 2A37C 8004EF7C 00021200 */ sll $v0, $v0, 8 /* 2A380 8004EF80 00431021 */ addu $v0, $v0, $v1 /* 2A384 8004EF84 24420078 */ addiu $v0, $v0, 0x78 /* 2A388 8004EF88 AE020028 */ sw $v0, 0x28($s0) /* 2A38C 8004EF8C 8602003E */ lh $v0, 0x3e($s0) /* 2A390 8004EF90 9603003E */ lhu $v1, 0x3e($s0) /* 2A394 8004EF94 10400220 */ beqz $v0, .L8004F818 /* 2A398 8004EF98 2462FFFF */ addiu $v0, $v1, -1 /* 2A39C 8004EF9C A602003E */ sh $v0, 0x3e($s0) /* 2A3A0 8004EFA0 00021400 */ sll $v0, $v0, 0x10 /* 2A3A4 8004EFA4 1440021C */ bnez $v0, .L8004F818 /* 2A3A8 8004EFA8 00000000 */ nop /* 2A3AC 8004EFAC 8E020004 */ lw $v0, 4($s0) /* 2A3B0 8004EFB0 08013E06 */ j .L8004F818 /* 2A3B4 8004EFB4 AE020000 */ sw $v0, ($s0) .L8004EFB8: /* 2A3B8 8004EFB8 08013C47 */ j .L8004F11C /* 2A3BC 8004EFBC 24110001 */ addiu $s1, $zero, 1 .L8004EFC0: /* 2A3C0 8004EFC0 0C014E31 */ jal func_800538C4 /* 2A3C4 8004EFC4 0240202D */ daddu $a0, $s2, $zero /* 2A3C8 8004EFC8 08013C63 */ j .L8004F18C /* 2A3CC 8004EFCC 24110001 */ addiu $s1, $zero, 1 .L8004EFD0: /* 2A3D0 8004EFD0 0C014E31 */ jal func_800538C4 /* 2A3D4 8004EFD4 0240202D */ daddu $a0, $s2, $zero /* 2A3D8 8004EFD8 08013C82 */ j .L8004F208 /* 2A3DC 8004EFDC 24110001 */ addiu $s1, $zero, 1 .L8004EFE0: /* 2A3E0 8004EFE0 2C6200D4 */ sltiu $v0, $v1, 0xd4 /* 2A3E4 8004EFE4 104001B7 */ beqz $v0, .L8004F6C4 /* 2A3E8 8004EFE8 00000000 */ nop /* 2A3EC 8004EFEC 8E020000 */ lw $v0, ($s0) /* 2A3F0 8004EFF0 905E0000 */ lbu $fp, ($v0) /* 2A3F4 8004EFF4 24420001 */ addiu $v0, $v0, 1 /* 2A3F8 8004EFF8 AE020000 */ sw $v0, ($s0) /* 2A3FC 8004EFFC 30E2007F */ andi $v0, $a3, 0x7f /* 2A400 8004F000 304200FF */ andi $v0, $v0, 0xff /* 2A404 8004F004 A7A20026 */ sh $v0, 0x26($sp) /* 2A408 8004F008 8602003E */ lh $v0, 0x3e($s0) /* 2A40C 8004F00C 9603003E */ lhu $v1, 0x3e($s0) /* 2A410 8004F010 10400007 */ beqz $v0, .L8004F030 /* 2A414 8004F014 2462FFFF */ addiu $v0, $v1, -1 /* 2A418 8004F018 A602003E */ sh $v0, 0x3e($s0) /* 2A41C 8004F01C 00021400 */ sll $v0, $v0, 0x10 /* 2A420 8004F020 14400003 */ bnez $v0, .L8004F030 /* 2A424 8004F024 00000000 */ nop /* 2A428 8004F028 8E020004 */ lw $v0, 4($s0) /* 2A42C 8004F02C AE020000 */ sw $v0, ($s0) .L8004F030: /* 2A430 8004F030 8E020000 */ lw $v0, ($s0) /* 2A434 8004F034 90560000 */ lbu $s6, ($v0) /* 2A438 8004F038 24420001 */ addiu $v0, $v0, 1 /* 2A43C 8004F03C AE020000 */ sw $v0, ($s0) /* 2A440 8004F040 8602003E */ lh $v0, 0x3e($s0) /* 2A444 8004F044 9603003E */ lhu $v1, 0x3e($s0) /* 2A448 8004F048 10400007 */ beqz $v0, .L8004F068 /* 2A44C 8004F04C 2462FFFF */ addiu $v0, $v1, -1 /* 2A450 8004F050 A602003E */ sh $v0, 0x3e($s0) /* 2A454 8004F054 00021400 */ sll $v0, $v0, 0x10 /* 2A458 8004F058 14400004 */ bnez $v0, .L8004F06C /* 2A45C 8004F05C 2AC200C0 */ slti $v0, $s6, 0xc0 /* 2A460 8004F060 8E020004 */ lw $v0, 4($s0) /* 2A464 8004F064 AE020000 */ sw $v0, ($s0) .L8004F068: /* 2A468 8004F068 2AC200C0 */ slti $v0, $s6, 0xc0 .L8004F06C: /* 2A46C 8004F06C 14400013 */ bnez $v0, .L8004F0BC /* 2A470 8004F070 00000000 */ nop /* 2A474 8004F074 8E020000 */ lw $v0, ($s0) /* 2A478 8004F078 90430000 */ lbu $v1, ($v0) /* 2A47C 8004F07C 24420001 */ addiu $v0, $v0, 1 /* 2A480 8004F080 AE020000 */ sw $v0, ($s0) /* 2A484 8004F084 32C2003F */ andi $v0, $s6, 0x3f /* 2A488 8004F088 00021200 */ sll $v0, $v0, 8 /* 2A48C 8004F08C 00431021 */ addu $v0, $v0, $v1 /* 2A490 8004F090 245600C0 */ addiu $s6, $v0, 0xc0 /* 2A494 8004F094 8602003E */ lh $v0, 0x3e($s0) /* 2A498 8004F098 9603003E */ lhu $v1, 0x3e($s0) /* 2A49C 8004F09C 10400007 */ beqz $v0, .L8004F0BC /* 2A4A0 8004F0A0 2462FFFF */ addiu $v0, $v1, -1 /* 2A4A4 8004F0A4 A602003E */ sh $v0, 0x3e($s0) /* 2A4A8 8004F0A8 00021400 */ sll $v0, $v0, 0x10 /* 2A4AC 8004F0AC 14400003 */ bnez $v0, .L8004F0BC /* 2A4B0 8004F0B0 00000000 */ nop /* 2A4B4 8004F0B4 8E020004 */ lw $v0, 4($s0) /* 2A4B8 8004F0B8 AE020000 */ sw $v0, ($s0) .L8004F0BC: /* 2A4BC 8004F0BC 9202005A */ lbu $v0, 0x5a($s0) /* 2A4C0 8004F0C0 14400097 */ bnez $v0, .L8004F320 /* 2A4C4 8004F0C4 0000882D */ daddu $s1, $zero, $zero /* 2A4C8 8004F0C8 93B5001F */ lbu $s5, 0x1f($sp) /* 2A4CC 8004F0CC 92040053 */ lbu $a0, 0x53($s0) /* 2A4D0 8004F0D0 32A300FF */ andi $v1, $s5, 0xff /* 2A4D4 8004F0D4 0064102B */ sltu $v0, $v1, $a0 /* 2A4D8 8004F0D8 10400010 */ beqz $v0, .L8004F11C /* 2A4DC 8004F0DC 000310C0 */ sll $v0, $v1, 3 /* 2A4E0 8004F0E0 8E850000 */ lw $a1, ($s4) .L8004F0E4: /* 2A4E4 8004F0E4 00431021 */ addu $v0, $v0, $v1 /* 2A4E8 8004F0E8 000210C0 */ sll $v0, $v0, 3 /* 2A4EC 8004F0EC 24421320 */ addiu $v0, $v0, 0x1320 /* 2A4F0 8004F0F0 00A29021 */ addu $s2, $a1, $v0 /* 2A4F4 8004F0F4 93AB001F */ lbu $t3, 0x1f($sp) /* 2A4F8 8004F0F8 92420045 */ lbu $v0, 0x45($s2) /* 2A4FC 8004F0FC 256B0001 */ addiu $t3, $t3, 1 /* 2A500 8004F100 1040FFAD */ beqz $v0, .L8004EFB8 /* 2A504 8004F104 A3AB001F */ sb $t3, 0x1f($sp) /* 2A508 8004F108 26B50001 */ addiu $s5, $s5, 1 /* 2A50C 8004F10C 32A300FF */ andi $v1, $s5, 0xff /* 2A510 8004F110 0064102B */ sltu $v0, $v1, $a0 /* 2A514 8004F114 1440FFF3 */ bnez $v0, .L8004F0E4 /* 2A518 8004F118 000310C0 */ sll $v0, $v1, 3 .L8004F11C: /* 2A51C 8004F11C 16200082 */ bnez $s1, .L8004F328 /* 2A520 8004F120 32A200FF */ andi $v0, $s5, 0xff /* 2A524 8004F124 92020054 */ lbu $v0, 0x54($s0) /* 2A528 8004F128 2C420005 */ sltiu $v0, $v0, 5 /* 2A52C 8004F12C 14400066 */ bnez $v0, .L8004F2C8 /* 2A530 8004F130 00000000 */ nop /* 2A534 8004F134 92150052 */ lbu $s5, 0x52($s0) /* 2A538 8004F138 92030053 */ lbu $v1, 0x53($s0) /* 2A53C 8004F13C 32A500FF */ andi $a1, $s5, 0xff /* 2A540 8004F140 00A3102B */ sltu $v0, $a1, $v1 /* 2A544 8004F144 10400011 */ beqz $v0, .L8004F18C /* 2A548 8004F148 000510C0 */ sll $v0, $a1, 3 /* 2A54C 8004F14C 0060302D */ daddu $a2, $v1, $zero /* 2A550 8004F150 8E840000 */ lw $a0, ($s4) /* 2A554 8004F154 92830234 */ lbu $v1, 0x234($s4) .L8004F158: /* 2A558 8004F158 00451021 */ addu $v0, $v0, $a1 /* 2A55C 8004F15C 000210C0 */ sll $v0, $v0, 3 /* 2A560 8004F160 24421320 */ addiu $v0, $v0, 0x1320 /* 2A564 8004F164 00829021 */ addu $s2, $a0, $v0 /* 2A568 8004F168 92420045 */ lbu $v0, 0x45($s2) /* 2A56C 8004F16C 0043102B */ sltu $v0, $v0, $v1 /* 2A570 8004F170 1440FF93 */ bnez $v0, .L8004EFC0 /* 2A574 8004F174 00000000 */ nop /* 2A578 8004F178 26B50001 */ addiu $s5, $s5, 1 /* 2A57C 8004F17C 32A500FF */ andi $a1, $s5, 0xff /* 2A580 8004F180 00A6102B */ sltu $v0, $a1, $a2 /* 2A584 8004F184 1440FFF4 */ bnez $v0, .L8004F158 /* 2A588 8004F188 000510C0 */ sll $v0, $a1, 3 .L8004F18C: /* 2A58C 8004F18C 16200066 */ bnez $s1, .L8004F328 /* 2A590 8004F190 32A200FF */ andi $v0, $s5, 0xff /* 2A594 8004F194 92150052 */ lbu $s5, 0x52($s0) /* 2A598 8004F198 92030053 */ lbu $v1, 0x53($s0) /* 2A59C 8004F19C 32A500FF */ andi $a1, $s5, 0xff /* 2A5A0 8004F1A0 00A3102B */ sltu $v0, $a1, $v1 /* 2A5A4 8004F1A4 10400018 */ beqz $v0, .L8004F208 /* 2A5A8 8004F1A8 000510C0 */ sll $v0, $a1, 3 /* 2A5AC 8004F1AC 0060302D */ daddu $a2, $v1, $zero /* 2A5B0 8004F1B0 8E840000 */ lw $a0, ($s4) /* 2A5B4 8004F1B4 92830234 */ lbu $v1, 0x234($s4) .L8004F1B8: /* 2A5B8 8004F1B8 00451021 */ addu $v0, $v0, $a1 /* 2A5BC 8004F1BC 000210C0 */ sll $v0, $v0, 3 /* 2A5C0 8004F1C0 24421320 */ addiu $v0, $v0, 0x1320 /* 2A5C4 8004F1C4 00829021 */ addu $s2, $a0, $v0 /* 2A5C8 8004F1C8 92420045 */ lbu $v0, 0x45($s2) /* 2A5CC 8004F1CC 5443000A */ bnel $v0, $v1, .L8004F1F8 /* 2A5D0 8004F1D0 26B50001 */ addiu $s5, $s5, 1 /* 2A5D4 8004F1D4 00051040 */ sll $v0, $a1, 1 /* 2A5D8 8004F1D8 00451021 */ addu $v0, $v0, $a1 /* 2A5DC 8004F1DC 000210C0 */ sll $v0, $v0, 3 /* 2A5E0 8004F1E0 2442085C */ addiu $v0, $v0, 0x85c /* 2A5E4 8004F1E4 02829821 */ addu $s3, $s4, $v0 /* 2A5E8 8004F1E8 8E62000C */ lw $v0, 0xc($s3) /* 2A5EC 8004F1EC 1040FF78 */ beqz $v0, .L8004EFD0 /* 2A5F0 8004F1F0 00000000 */ nop /* 2A5F4 8004F1F4 26B50001 */ addiu $s5, $s5, 1 .L8004F1F8: /* 2A5F8 8004F1F8 32A500FF */ andi $a1, $s5, 0xff /* 2A5FC 8004F1FC 00A6102B */ sltu $v0, $a1, $a2 /* 2A600 8004F200 1440FFED */ bnez $v0, .L8004F1B8 /* 2A604 8004F204 000510C0 */ sll $v0, $a1, 3 .L8004F208: /* 2A608 8004F208 16200047 */ bnez $s1, .L8004F328 /* 2A60C 8004F20C 32A200FF */ andi $v0, $s5, 0xff /* 2A610 8004F210 92050052 */ lbu $a1, 0x52($s0) /* 2A614 8004F214 92040053 */ lbu $a0, 0x53($s0) /* 2A618 8004F218 30A300FF */ andi $v1, $a1, 0xff /* 2A61C 8004F21C 0064102B */ sltu $v0, $v1, $a0 /* 2A620 8004F220 10400022 */ beqz $v0, .L8004F2AC /* 2A624 8004F224 3407FFFF */ ori $a3, $zero, 0xffff /* 2A628 8004F228 0080502D */ daddu $t2, $a0, $zero /* 2A62C 8004F22C 8E890000 */ lw $t1, ($s4) /* 2A630 8004F230 92880234 */ lbu $t0, 0x234($s4) /* 2A634 8004F234 000310C0 */ sll $v0, $v1, 3 .L8004F238: /* 2A638 8004F238 00431021 */ addu $v0, $v0, $v1 /* 2A63C 8004F23C 000210C0 */ sll $v0, $v0, 3 /* 2A640 8004F240 24421320 */ addiu $v0, $v0, 0x1320 /* 2A644 8004F244 01223021 */ addu $a2, $t1, $v0 /* 2A648 8004F248 90C20045 */ lbu $v0, 0x45($a2) /* 2A64C 8004F24C 54480013 */ bnel $v0, $t0, .L8004F29C /* 2A650 8004F250 24A50001 */ addiu $a1, $a1, 1 /* 2A654 8004F254 00031040 */ sll $v0, $v1, 1 /* 2A658 8004F258 00431021 */ addu $v0, $v0, $v1 /* 2A65C 8004F25C 000210C0 */ sll $v0, $v0, 3 /* 2A660 8004F260 2442085C */ addiu $v0, $v0, 0x85c /* 2A664 8004F264 02822021 */ addu $a0, $s4, $v0 /* 2A668 8004F268 90820017 */ lbu $v0, 0x17($a0) /* 2A66C 8004F26C 5440000B */ bnel $v0, $zero, .L8004F29C /* 2A670 8004F270 24A50001 */ addiu $a1, $a1, 1 /* 2A674 8004F274 8C83000C */ lw $v1, 0xc($a0) /* 2A678 8004F278 0067102A */ slt $v0, $v1, $a3 /* 2A67C 8004F27C 50400007 */ beql $v0, $zero, .L8004F29C /* 2A680 8004F280 24A50001 */ addiu $a1, $a1, 1 /* 2A684 8004F284 0060382D */ daddu $a3, $v1, $zero /* 2A688 8004F288 00C0902D */ daddu $s2, $a2, $zero /* 2A68C 8004F28C 0080982D */ daddu $s3, $a0, $zero /* 2A690 8004F290 00A0A82D */ daddu $s5, $a1, $zero /* 2A694 8004F294 24110001 */ addiu $s1, $zero, 1 /* 2A698 8004F298 24A50001 */ addiu $a1, $a1, 1 .L8004F29C: /* 2A69C 8004F29C 30A300FF */ andi $v1, $a1, 0xff /* 2A6A0 8004F2A0 006A102B */ sltu $v0, $v1, $t2 /* 2A6A4 8004F2A4 1440FFE4 */ bnez $v0, .L8004F238 /* 2A6A8 8004F2A8 000310C0 */ sll $v0, $v1, 3 .L8004F2AC: /* 2A6AC 8004F2AC 1220015A */ beqz $s1, .L8004F818 /* 2A6B0 8004F2B0 0240202D */ daddu $a0, $s2, $zero /* 2A6B4 8004F2B4 AE60000C */ sw $zero, 0xc($s3) /* 2A6B8 8004F2B8 0C014E31 */ jal func_800538C4 /* 2A6BC 8004F2BC 32A500FF */ andi $a1, $s5, 0xff /* 2A6C0 8004F2C0 08013CC8 */ j .L8004F320 /* 2A6C4 8004F2C4 00000000 */ nop .L8004F2C8: /* 2A6C8 8004F2C8 92150052 */ lbu $s5, 0x52($s0) /* 2A6CC 8004F2CC 8E830000 */ lw $v1, ($s4) /* 2A6D0 8004F2D0 32A500FF */ andi $a1, $s5, 0xff /* 2A6D4 8004F2D4 000510C0 */ sll $v0, $a1, 3 /* 2A6D8 8004F2D8 00451021 */ addu $v0, $v0, $a1 /* 2A6DC 8004F2DC 000210C0 */ sll $v0, $v0, 3 /* 2A6E0 8004F2E0 24421320 */ addiu $v0, $v0, 0x1320 /* 2A6E4 8004F2E4 00629021 */ addu $s2, $v1, $v0 /* 2A6E8 8004F2E8 00051040 */ sll $v0, $a1, 1 /* 2A6EC 8004F2EC 00451021 */ addu $v0, $v0, $a1 /* 2A6F0 8004F2F0 000210C0 */ sll $v0, $v0, 3 /* 2A6F4 8004F2F4 2442085C */ addiu $v0, $v0, 0x85c /* 2A6F8 8004F2F8 02829821 */ addu $s3, $s4, $v0 /* 2A6FC 8004F2FC AE60000C */ sw $zero, 0xc($s3) /* 2A700 8004F300 92430045 */ lbu $v1, 0x45($s2) /* 2A704 8004F304 92820234 */ lbu $v0, 0x234($s4) /* 2A708 8004F308 0043102B */ sltu $v0, $v0, $v1 /* 2A70C 8004F30C 14400004 */ bnez $v0, .L8004F320 /* 2A710 8004F310 00000000 */ nop /* 2A714 8004F314 0C014E31 */ jal func_800538C4 /* 2A718 8004F318 0240202D */ daddu $a0, $s2, $zero /* 2A71C 8004F31C 24110001 */ addiu $s1, $zero, 1 .L8004F320: /* 2A720 8004F320 1220013D */ beqz $s1, .L8004F818 /* 2A724 8004F324 32A200FF */ andi $v0, $s5, 0xff .L8004F328: /* 2A728 8004F328 00021840 */ sll $v1, $v0, 1 /* 2A72C 8004F32C 00621821 */ addu $v1, $v1, $v0 /* 2A730 8004F330 000318C0 */ sll $v1, $v1, 3 /* 2A734 8004F334 2463085C */ addiu $v1, $v1, 0x85c /* 2A738 8004F338 02839821 */ addu $s3, $s4, $v1 /* 2A73C 8004F33C 33C200FF */ andi $v0, $fp, 0xff /* 2A740 8004F340 10400004 */ beqz $v0, .L8004F354 /* 2A744 8004F344 A2600012 */ sb $zero, 0x12($s3) /* 2A748 8004F348 27C20001 */ addiu $v0, $fp, 1 /* 2A74C 8004F34C 08013CD6 */ j .L8004F358 /* 2A750 8004F350 A2620016 */ sb $v0, 0x16($s3) .L8004F354: /* 2A754 8004F354 A2600016 */ sb $zero, 0x16($s3) .L8004F358: /* 2A758 8004F358 AE76000C */ sw $s6, 0xc($s3) /* 2A75C 8004F35C 92020058 */ lbu $v0, 0x58($s0) /* 2A760 8004F360 10400072 */ beqz $v0, .L8004F52C /* 2A764 8004F364 00000000 */ nop /* 2A768 8004F368 97AB0026 */ lhu $t3, 0x26($sp) /* 2A76C 8004F36C 0160202D */ daddu $a0, $t3, $zero /* 2A770 8004F370 28820048 */ slti $v0, $a0, 0x48 /* 2A774 8004F374 10400007 */ beqz $v0, .L8004F394 /* 2A778 8004F378 00041040 */ sll $v0, $a0, 1 /* 2A77C 8004F37C 8E830000 */ lw $v1, ($s4) /* 2A780 8004F380 00441021 */ addu $v0, $v0, $a0 /* 2A784 8004F384 8C630054 */ lw $v1, 0x54($v1) /* 2A788 8004F388 00021080 */ sll $v0, $v0, 2 /* 2A78C 8004F38C 08013CE9 */ j .L8004F3A4 /* 2A790 8004F390 00628821 */ addu $s1, $v1, $v0 .L8004F394: /* 2A794 8004F394 2482FFB8 */ addiu $v0, $a0, -0x48 /* 2A798 8004F398 00021080 */ sll $v0, $v0, 2 /* 2A79C 8004F39C 02821021 */ addu $v0, $s4, $v0 /* 2A7A0 8004F3A0 8C510080 */ lw $s1, 0x80($v0) .L8004F3A4: /* 2A7A4 8004F3A4 26470014 */ addiu $a3, $s2, 0x14 /* 2A7A8 8004F3A8 96260000 */ lhu $a2, ($s1) /* 2A7AC 8004F3AC 8E840000 */ lw $a0, ($s4) /* 2A7B0 8004F3B0 00062A02 */ srl $a1, $a2, 8 /* 2A7B4 8004F3B4 0C014EFA */ jal func_80053BE8 /* 2A7B8 8004F3B8 30C600FF */ andi $a2, $a2, 0xff /* 2A7BC 8004F3BC AE620000 */ sw $v0, ($s3) /* 2A7C0 8004F3C0 92220008 */ lbu $v0, 8($s1) /* 2A7C4 8004F3C4 10400008 */ beqz $v0, .L8004F3E8 /* 2A7C8 8004F3C8 00000000 */ nop /* 2A7CC 8004F3CC 8E840050 */ lw $a0, 0x50($s4) /* 2A7D0 8004F3D0 92250004 */ lbu $a1, 4($s1) /* 2A7D4 8004F3D4 0C014195 */ jal func_80050654 /* 2A7D8 8004F3D8 0040302D */ daddu $a2, $v0, $zero /* 2A7DC 8004F3DC 92630016 */ lbu $v1, 0x16($s3) /* 2A7E0 8004F3E0 08013CFC */ j .L8004F3F0 /* 2A7E4 8004F3E4 304200FF */ andi $v0, $v0, 0xff .L8004F3E8: /* 2A7E8 8004F3E8 92630016 */ lbu $v1, 0x16($s3) /* 2A7EC 8004F3EC 92220004 */ lbu $v0, 4($s1) .L8004F3F0: /* 2A7F0 8004F3F0 00620018 */ mult $v1, $v0 /* 2A7F4 8004F3F4 00005812 */ mflo $t3 /* 2A7F8 8004F3F8 A66B0008 */ sh $t3, 8($s3) /* 2A7FC 8004F3FC 8E8300C0 */ lw $v1, 0xc0($s4) /* 2A800 8004F400 8E020018 */ lw $v0, 0x18($s0) /* 2A804 8004F404 00031D43 */ sra $v1, $v1, 0x15 /* 2A808 8004F408 00021543 */ sra $v0, $v0, 0x15 /* 2A80C 8004F40C 00620018 */ mult $v1, $v0 /* 2A810 8004F410 8E02002C */ lw $v0, 0x2c($s0) /* 2A814 8004F414 00001812 */ mflo $v1 /* 2A818 8004F418 00021543 */ sra $v0, $v0, 0x15 /* 2A81C 8004F41C 00000000 */ nop /* 2A820 8004F420 00620018 */ mult $v1, $v0 /* 2A824 8004F424 82030049 */ lb $v1, 0x49($s0) /* 2A828 8004F428 00002012 */ mflo $a0 /* 2A82C 8004F42C 86620008 */ lh $v0, 8($s3) /* 2A830 8004F430 00000000 */ nop /* 2A834 8004F434 00620018 */ mult $v1, $v0 /* 2A838 8004F438 00001812 */ mflo $v1 /* 2A83C 8004F43C 00041503 */ sra $v0, $a0, 0x14 /* 2A840 8004F440 00000000 */ nop /* 2A844 8004F444 00430018 */ mult $v0, $v1 /* 2A848 8004F448 00001812 */ mflo $v1 /* 2A84C 8004F44C 00031403 */ sra $v0, $v1, 0x10 /* 2A850 8004F450 A6420040 */ sh $v0, 0x40($s2) /* 2A854 8004F454 92020048 */ lbu $v0, 0x48($s0) /* 2A858 8004F458 96230002 */ lhu $v1, 2($s1) /* 2A85C 8004F45C 96040046 */ lhu $a0, 0x46($s0) /* 2A860 8004F460 8E650000 */ lw $a1, ($s3) /* 2A864 8004F464 00021600 */ sll $v0, $v0, 0x18 /* 2A868 8004F468 00021603 */ sra $v0, $v0, 0x18 /* 2A86C 8004F46C 00641821 */ addu $v1, $v1, $a0 /* 2A870 8004F470 94A4001E */ lhu $a0, 0x1e($a1) /* 2A874 8004F474 00431021 */ addu $v0, $v0, $v1 /* 2A878 8004F478 00441023 */ subu $v0, $v0, $a0 /* 2A87C 8004F47C A662000A */ sh $v0, 0xa($s3) /* 2A880 8004F480 00021400 */ sll $v0, $v0, 0x10 /* 2A884 8004F484 86030038 */ lh $v1, 0x38($s0) /* 2A888 8004F488 00021403 */ sra $v0, $v0, 0x10 /* 2A88C 8004F48C 00431021 */ addu $v0, $v0, $v1 /* 2A890 8004F490 8683020E */ lh $v1, 0x20e($s4) /* 2A894 8004F494 92240007 */ lbu $a0, 7($s1) /* 2A898 8004F498 10800007 */ beqz $a0, .L8004F4B8 /* 2A89C 8004F49C 00432821 */ addu $a1, $v0, $v1 /* 2A8A0 8004F4A0 8E840050 */ lw $a0, 0x50($s4) /* 2A8A4 8004F4A4 0C014179 */ jal func_800505E4 /* 2A8A8 8004F4A8 92260007 */ lbu $a2, 7($s1) /* 2A8AC 8004F4AC 00021C00 */ sll $v1, $v0, 0x10 /* 2A8B0 8004F4B0 00032C03 */ sra $a1, $v1, 0x10 /* 2A8B4 8004F4B4 A6620014 */ sh $v0, 0x14($s3) .L8004F4B8: /* 2A8B8 8004F4B8 0C014E3E */ jal func_800538F8 /* 2A8BC 8004F4BC 00A0202D */ daddu $a0, $a1, $zero /* 2A8C0 8004F4C0 8E620000 */ lw $v0, ($s3) /* 2A8C4 8004F4C4 C4420020 */ lwc1 $f2, 0x20($v0) /* 2A8C8 8004F4C8 46020002 */ mul.s $f0, $f0, $f2 /* 2A8CC 8004F4CC 00000000 */ nop /* 2A8D0 8004F4D0 E6600004 */ swc1 $f0, 4($s3) /* 2A8D4 8004F4D4 92220009 */ lbu $v0, 9($s1) /* 2A8D8 8004F4D8 10400006 */ beqz $v0, .L8004F4F4 /* 2A8DC 8004F4DC 0040302D */ daddu $a2, $v0, $zero /* 2A8E0 8004F4E0 92250005 */ lbu $a1, 5($s1) /* 2A8E4 8004F4E4 0C01415A */ jal func_80050568 /* 2A8E8 8004F4E8 0280202D */ daddu $a0, $s4, $zero /* 2A8EC 8004F4EC 08013D3F */ j .L8004F4FC /* 2A8F0 8004F4F0 A242000E */ sb $v0, 0xe($s2) .L8004F4F4: /* 2A8F4 8004F4F4 92220005 */ lbu $v0, 5($s1) /* 2A8F8 8004F4F8 A242000E */ sb $v0, 0xe($s2) .L8004F4FC: /* 2A8FC 8004F4FC 9222000A */ lbu $v0, 0xa($s1) /* 2A900 8004F500 10400007 */ beqz $v0, .L8004F520 /* 2A904 8004F504 00000000 */ nop /* 2A908 8004F508 8E840050 */ lw $a0, 0x50($s4) /* 2A90C 8004F50C 92250006 */ lbu $a1, 6($s1) /* 2A910 8004F510 0C0141A3 */ jal func_8005068C /* 2A914 8004F514 0040302D */ daddu $a2, $v0, $zero /* 2A918 8004F518 08013D9B */ j .L8004F66C /* 2A91C 8004F51C A242000F */ sb $v0, 0xf($s2) .L8004F520: /* 2A920 8004F520 92220006 */ lbu $v0, 6($s1) /* 2A924 8004F524 08013D9B */ j .L8004F66C /* 2A928 8004F528 A242000F */ sb $v0, 0xf($s2) .L8004F52C: /* 2A92C 8004F52C 8E8300C0 */ lw $v1, 0xc0($s4) /* 2A930 8004F530 8E020018 */ lw $v0, 0x18($s0) /* 2A934 8004F534 00031D43 */ sra $v1, $v1, 0x15 /* 2A938 8004F538 00021543 */ sra $v0, $v0, 0x15 /* 2A93C 8004F53C 00620018 */ mult $v1, $v0 /* 2A940 8004F540 8E02002C */ lw $v0, 0x2c($s0) /* 2A944 8004F544 00001812 */ mflo $v1 /* 2A948 8004F548 00021543 */ sra $v0, $v0, 0x15 /* 2A94C 8004F54C 00000000 */ nop /* 2A950 8004F550 00620018 */ mult $v1, $v0 /* 2A954 8004F554 82030049 */ lb $v1, 0x49($s0) /* 2A958 8004F558 00002012 */ mflo $a0 /* 2A95C 8004F55C 92620016 */ lbu $v0, 0x16($s3) /* 2A960 8004F560 00000000 */ nop /* 2A964 8004F564 00620018 */ mult $v1, $v0 /* 2A968 8004F568 00001812 */ mflo $v1 /* 2A96C 8004F56C 00041503 */ sra $v0, $a0, 0x14 /* 2A970 8004F570 00000000 */ nop /* 2A974 8004F574 00430018 */ mult $v0, $v1 /* 2A978 8004F578 00001812 */ mflo $v1 /* 2A97C 8004F57C 00031243 */ sra $v0, $v1, 9 /* 2A980 8004F580 A6620008 */ sh $v0, 8($s3) /* 2A984 8004F584 A6420040 */ sh $v0, 0x40($s2) /* 2A988 8004F588 8E06000C */ lw $a2, 0xc($s0) /* 2A98C 8004F58C AE660000 */ sw $a2, ($s3) /* 2A990 8004F590 92040048 */ lbu $a0, 0x48($s0) /* 2A994 8004F594 97AB0026 */ lhu $t3, 0x26($sp) /* 2A998 8004F598 9685020C */ lhu $a1, 0x20c($s4) /* 2A99C 8004F59C 00042600 */ sll $a0, $a0, 0x18 /* 2A9A0 8004F5A0 00042603 */ sra $a0, $a0, 0x18 /* 2A9A4 8004F5A4 0160182D */ daddu $v1, $t3, $zero /* 2A9A8 8004F5A8 00031040 */ sll $v0, $v1, 1 /* 2A9AC 8004F5AC 00431021 */ addu $v0, $v0, $v1 /* 2A9B0 8004F5B0 000210C0 */ sll $v0, $v0, 3 /* 2A9B4 8004F5B4 00431021 */ addu $v0, $v0, $v1 /* 2A9B8 8004F5B8 96030046 */ lhu $v1, 0x46($s0) /* 2A9BC 8004F5BC 00021080 */ sll $v0, $v0, 2 /* 2A9C0 8004F5C0 00621821 */ addu $v1, $v1, $v0 /* 2A9C4 8004F5C4 00A32821 */ addu $a1, $a1, $v1 /* 2A9C8 8004F5C8 94C2001E */ lhu $v0, 0x1e($a2) /* 2A9CC 8004F5CC 00852021 */ addu $a0, $a0, $a1 /* 2A9D0 8004F5D0 00822023 */ subu $a0, $a0, $v0 /* 2A9D4 8004F5D4 A664000A */ sh $a0, 0xa($s3) /* 2A9D8 8004F5D8 00042400 */ sll $a0, $a0, 0x10 /* 2A9DC 8004F5DC 00042403 */ sra $a0, $a0, 0x10 /* 2A9E0 8004F5E0 86020038 */ lh $v0, 0x38($s0) /* 2A9E4 8004F5E4 8683020E */ lh $v1, 0x20e($s4) /* 2A9E8 8004F5E8 00822021 */ addu $a0, $a0, $v0 /* 2A9EC 8004F5EC 0C014E3E */ jal func_800538F8 /* 2A9F0 8004F5F0 00832021 */ addu $a0, $a0, $v1 /* 2A9F4 8004F5F4 8E02000C */ lw $v0, 0xc($s0) /* 2A9F8 8004F5F8 C4420020 */ lwc1 $f2, 0x20($v0) /* 2A9FC 8004F5FC 46020002 */ mul.s $f0, $f0, $f2 /* 2AA00 8004F600 00000000 */ nop /* 2AA04 8004F604 E6600004 */ swc1 $f0, 4($s3) /* 2AA08 8004F608 92020057 */ lbu $v0, 0x57($s0) /* 2AA0C 8004F60C 10400006 */ beqz $v0, .L8004F628 /* 2AA10 8004F610 0040302D */ daddu $a2, $v0, $zero /* 2AA14 8004F614 9205004A */ lbu $a1, 0x4a($s0) /* 2AA18 8004F618 0C01415A */ jal func_80050568 /* 2AA1C 8004F61C 0280202D */ daddu $a0, $s4, $zero /* 2AA20 8004F620 08013D8C */ j .L8004F630 /* 2AA24 8004F624 A242000E */ sb $v0, 0xe($s2) .L8004F628: /* 2AA28 8004F628 9202004A */ lbu $v0, 0x4a($s0) /* 2AA2C 8004F62C A242000E */ sb $v0, 0xe($s2) .L8004F630: /* 2AA30 8004F630 9202004B */ lbu $v0, 0x4b($s0) /* 2AA34 8004F634 A242000F */ sb $v0, 0xf($s2) /* 2AA38 8004F638 9202004C */ lbu $v0, 0x4c($s0) /* 2AA3C 8004F63C 10400007 */ beqz $v0, .L8004F65C /* 2AA40 8004F640 0040182D */ daddu $v1, $v0, $zero /* 2AA44 8004F644 000310C0 */ sll $v0, $v1, 3 /* 2AA48 8004F648 00431021 */ addu $v0, $v0, $v1 /* 2AA4C 8004F64C 00021040 */ sll $v0, $v0, 1 /* 2AA50 8004F650 24420162 */ addiu $v0, $v0, 0x162 /* 2AA54 8004F654 08013D98 */ j .L8004F660 /* 2AA58 8004F658 02821021 */ addu $v0, $s4, $v0 .L8004F65C: /* 2AA5C 8004F65C 8E020010 */ lw $v0, 0x10($s0) .L8004F660: /* 2AA60 8004F660 AE420014 */ sw $v0, 0x14($s2) /* 2AA64 8004F664 8E020014 */ lw $v0, 0x14($s0) /* 2AA68 8004F668 AE420018 */ sw $v0, 0x18($s2) .L8004F66C: /* 2AA6C 8004F66C 8E620000 */ lw $v0, ($s3) /* 2AA70 8004F670 AE420000 */ sw $v0, ($s2) /* 2AA74 8004F674 C6600004 */ lwc1 $f0, 4($s3) /* 2AA78 8004F678 E6400004 */ swc1 $f0, 4($s2) /* 2AA7C 8004F67C 9202005B */ lbu $v0, 0x5b($s0) /* 2AA80 8004F680 A2420010 */ sb $v0, 0x10($s2) /* 2AA84 8004F684 8E62000C */ lw $v0, 0xc($s3) /* 2AA88 8004F688 28420002 */ slti $v0, $v0, 2 /* 2AA8C 8004F68C 14400062 */ bnez $v0, .L8004F818 /* 2AA90 8004F690 240B0001 */ addiu $t3, $zero, 1 /* 2AA94 8004F694 A26B0017 */ sb $t3, 0x17($s3) /* 2AA98 8004F698 92020056 */ lbu $v0, 0x56($s0) /* 2AA9C 8004F69C A2600013 */ sb $zero, 0x13($s3) /* 2AAA0 8004F6A0 A2620012 */ sb $v0, 0x12($s3) /* 2AAA4 8004F6A4 9602003A */ lhu $v0, 0x3a($s0) /* 2AAA8 8004F6A8 A6620010 */ sh $v0, 0x10($s3) /* 2AAAC 8004F6AC 24020002 */ addiu $v0, $zero, 2 /* 2AAB0 8004F6B0 A2420043 */ sb $v0, 0x43($s2) /* 2AAB4 8004F6B4 92820234 */ lbu $v0, 0x234($s4) /* 2AAB8 8004F6B8 A2420045 */ sb $v0, 0x45($s2) /* 2AABC 8004F6BC 08013E06 */ j .L8004F818 /* 2AAC0 8004F6C0 A2420044 */ sb $v0, 0x44($s2) .L8004F6C4: /* 2AAC4 8004F6C4 3C058008 */ lui $a1, 0x8008 /* 2AAC8 8004F6C8 00A32821 */ addu $a1, $a1, $v1 /* 2AACC 8004F6CC 90A58410 */ lbu $a1, -0x7bf0($a1) /* 2AAD0 8004F6D0 10A00047 */ beqz $a1, .L8004F7F0 /* 2AAD4 8004F6D4 0280202D */ daddu $a0, $s4, $zero /* 2AAD8 8004F6D8 8E020000 */ lw $v0, ($s0) /* 2AADC 8004F6DC 90430000 */ lbu $v1, ($v0) /* 2AAE0 8004F6E0 24420001 */ addiu $v0, $v0, 1 /* 2AAE4 8004F6E4 A28300D4 */ sb $v1, 0xd4($s4) /* 2AAE8 8004F6E8 AE020000 */ sw $v0, ($s0) /* 2AAEC 8004F6EC 8602003E */ lh $v0, 0x3e($s0) /* 2AAF0 8004F6F0 9603003E */ lhu $v1, 0x3e($s0) /* 2AAF4 8004F6F4 10400007 */ beqz $v0, .L8004F714 /* 2AAF8 8004F6F8 2462FFFF */ addiu $v0, $v1, -1 /* 2AAFC 8004F6FC A602003E */ sh $v0, 0x3e($s0) /* 2AB00 8004F700 00021400 */ sll $v0, $v0, 0x10 /* 2AB04 8004F704 14400004 */ bnez $v0, .L8004F718 /* 2AB08 8004F708 28A20002 */ slti $v0, $a1, 2 /* 2AB0C 8004F70C 8E020004 */ lw $v0, 4($s0) /* 2AB10 8004F710 AE020000 */ sw $v0, ($s0) .L8004F714: /* 2AB14 8004F714 28A20002 */ slti $v0, $a1, 2 .L8004F718: /* 2AB18 8004F718 14400035 */ bnez $v0, .L8004F7F0 /* 2AB1C 8004F71C 0280202D */ daddu $a0, $s4, $zero /* 2AB20 8004F720 8E020000 */ lw $v0, ($s0) /* 2AB24 8004F724 90430000 */ lbu $v1, ($v0) /* 2AB28 8004F728 24420001 */ addiu $v0, $v0, 1 /* 2AB2C 8004F72C A28300D5 */ sb $v1, 0xd5($s4) /* 2AB30 8004F730 AE020000 */ sw $v0, ($s0) /* 2AB34 8004F734 8602003E */ lh $v0, 0x3e($s0) /* 2AB38 8004F738 9603003E */ lhu $v1, 0x3e($s0) /* 2AB3C 8004F73C 10400007 */ beqz $v0, .L8004F75C /* 2AB40 8004F740 2462FFFF */ addiu $v0, $v1, -1 /* 2AB44 8004F744 A602003E */ sh $v0, 0x3e($s0) /* 2AB48 8004F748 00021400 */ sll $v0, $v0, 0x10 /* 2AB4C 8004F74C 14400004 */ bnez $v0, .L8004F760 /* 2AB50 8004F750 28A20003 */ slti $v0, $a1, 3 /* 2AB54 8004F754 8E020004 */ lw $v0, 4($s0) /* 2AB58 8004F758 AE020000 */ sw $v0, ($s0) .L8004F75C: /* 2AB5C 8004F75C 28A20003 */ slti $v0, $a1, 3 .L8004F760: /* 2AB60 8004F760 14400023 */ bnez $v0, .L8004F7F0 /* 2AB64 8004F764 0280202D */ daddu $a0, $s4, $zero /* 2AB68 8004F768 8E020000 */ lw $v0, ($s0) /* 2AB6C 8004F76C 90430000 */ lbu $v1, ($v0) /* 2AB70 8004F770 24420001 */ addiu $v0, $v0, 1 /* 2AB74 8004F774 A28300D6 */ sb $v1, 0xd6($s4) /* 2AB78 8004F778 AE020000 */ sw $v0, ($s0) /* 2AB7C 8004F77C 8602003E */ lh $v0, 0x3e($s0) /* 2AB80 8004F780 9603003E */ lhu $v1, 0x3e($s0) /* 2AB84 8004F784 10400007 */ beqz $v0, .L8004F7A4 /* 2AB88 8004F788 2462FFFF */ addiu $v0, $v1, -1 /* 2AB8C 8004F78C A602003E */ sh $v0, 0x3e($s0) /* 2AB90 8004F790 00021400 */ sll $v0, $v0, 0x10 /* 2AB94 8004F794 14400004 */ bnez $v0, .L8004F7A8 /* 2AB98 8004F798 28A20004 */ slti $v0, $a1, 4 /* 2AB9C 8004F79C 8E020004 */ lw $v0, 4($s0) /* 2ABA0 8004F7A0 AE020000 */ sw $v0, ($s0) .L8004F7A4: /* 2ABA4 8004F7A4 28A20004 */ slti $v0, $a1, 4 .L8004F7A8: /* 2ABA8 8004F7A8 14400011 */ bnez $v0, .L8004F7F0 /* 2ABAC 8004F7AC 0280202D */ daddu $a0, $s4, $zero /* 2ABB0 8004F7B0 8E020000 */ lw $v0, ($s0) /* 2ABB4 8004F7B4 90430000 */ lbu $v1, ($v0) /* 2ABB8 8004F7B8 24420001 */ addiu $v0, $v0, 1 /* 2ABBC 8004F7BC A28300D7 */ sb $v1, 0xd7($s4) /* 2ABC0 8004F7C0 AE020000 */ sw $v0, ($s0) /* 2ABC4 8004F7C4 8602003E */ lh $v0, 0x3e($s0) /* 2ABC8 8004F7C8 9603003E */ lhu $v1, 0x3e($s0) /* 2ABCC 8004F7CC 10400008 */ beqz $v0, .L8004F7F0 /* 2ABD0 8004F7D0 2462FFFF */ addiu $v0, $v1, -1 /* 2ABD4 8004F7D4 A602003E */ sh $v0, 0x3e($s0) /* 2ABD8 8004F7D8 00021400 */ sll $v0, $v0, 0x10 /* 2ABDC 8004F7DC 14400005 */ bnez $v0, .L8004F7F4 /* 2ABE0 8004F7E0 30E200FF */ andi $v0, $a3, 0xff /* 2ABE4 8004F7E4 8E020004 */ lw $v0, 4($s0) /* 2ABE8 8004F7E8 AE020000 */ sw $v0, ($s0) /* 2ABEC 8004F7EC 0280202D */ daddu $a0, $s4, $zero .L8004F7F0: /* 2ABF0 8004F7F0 30E200FF */ andi $v0, $a3, 0xff .L8004F7F4: /* 2ABF4 8004F7F4 2442FF20 */ addiu $v0, $v0, -0xe0 /* 2ABF8 8004F7F8 00021080 */ sll $v0, $v0, 2 /* 2ABFC 8004F7FC 3C018008 */ lui $at, 0x8008 /* 2AC00 8004F800 00220821 */ addu $at, $at, $v0 /* 2AC04 8004F804 8C228470 */ lw $v0, -0x7b90($at) /* 2AC08 8004F808 3C01800A */ lui $at, 0x800a /* 2AC0C 8004F80C AC223FD0 */ sw $v0, 0x3fd0($at) /* 2AC10 8004F810 0040F809 */ jalr $v0 /* 2AC14 8004F814 0200282D */ daddu $a1, $s0, $zero .L8004F818: /* 2AC18 8004F818 8E020028 */ lw $v0, 0x28($s0) /* 2AC1C 8004F81C 1040FDB5 */ beqz $v0, .L8004EEF4 /* 2AC20 8004F820 00000000 */ nop .L8004F824: /* 2AC24 8004F824 08013ED6 */ j .L8004FB58 /* 2AC28 8004F828 92150052 */ lbu $s5, 0x52($s0) .L8004F82C: /* 2AC2C 8004F82C 9202005A */ lbu $v0, 0x5a($s0) /* 2AC30 8004F830 544000C9 */ bnel $v0, $zero, .L8004FB58 /* 2AC34 8004F834 26B50001 */ addiu $s5, $s5, 1 /* 2AC38 8004F838 000410C0 */ sll $v0, $a0, 3 /* 2AC3C 8004F83C 00441021 */ addu $v0, $v0, $a0 /* 2AC40 8004F840 000210C0 */ sll $v0, $v0, 3 /* 2AC44 8004F844 8E830000 */ lw $v1, ($s4) /* 2AC48 8004F848 24421320 */ addiu $v0, $v0, 0x1320 /* 2AC4C 8004F84C 00629021 */ addu $s2, $v1, $v0 /* 2AC50 8004F850 92430045 */ lbu $v1, 0x45($s2) /* 2AC54 8004F854 92820234 */ lbu $v0, 0x234($s4) /* 2AC58 8004F858 546200BF */ bnel $v1, $v0, .L8004FB58 /* 2AC5C 8004F85C 26B50001 */ addiu $s5, $s5, 1 /* 2AC60 8004F860 00041040 */ sll $v0, $a0, 1 /* 2AC64 8004F864 00441021 */ addu $v0, $v0, $a0 /* 2AC68 8004F868 000210C0 */ sll $v0, $v0, 3 /* 2AC6C 8004F86C 2442085C */ addiu $v0, $v0, 0x85c /* 2AC70 8004F870 02829821 */ addu $s3, $s4, $v0 /* 2AC74 8004F874 92620017 */ lbu $v0, 0x17($s3) /* 2AC78 8004F878 544000B6 */ bnel $v0, $zero, .L8004FB54 /* 2AC7C 8004F87C A2600017 */ sb $zero, 0x17($s3) /* 2AC80 8004F880 8E62000C */ lw $v0, 0xc($s3) /* 2AC84 8004F884 18400006 */ blez $v0, .L8004F8A0 /* 2AC88 8004F888 2442FFFF */ addiu $v0, $v0, -1 /* 2AC8C 8004F88C 14400004 */ bnez $v0, .L8004F8A0 /* 2AC90 8004F890 AE62000C */ sw $v0, 0xc($s3) /* 2AC94 8004F894 9242003D */ lbu $v0, 0x3d($s2) /* 2AC98 8004F898 34420010 */ ori $v0, $v0, 0x10 /* 2AC9C 8004F89C A242003D */ sb $v0, 0x3d($s2) .L8004F8A0: /* 2ACA0 8004F8A0 92020058 */ lbu $v0, 0x58($s0) /* 2ACA4 8004F8A4 1040003A */ beqz $v0, .L8004F990 /* 2ACA8 8004F8A8 00000000 */ nop /* 2ACAC 8004F8AC 92020040 */ lbu $v0, 0x40($s0) /* 2ACB0 8004F8B0 14400004 */ bnez $v0, .L8004F8C4 /* 2ACB4 8004F8B4 00000000 */ nop /* 2ACB8 8004F8B8 8682020E */ lh $v0, 0x20e($s4) /* 2ACBC 8004F8BC 10400017 */ beqz $v0, .L8004F91C /* 2ACC0 8004F8C0 00000000 */ nop .L8004F8C4: /* 2ACC4 8004F8C4 8664000A */ lh $a0, 0xa($s3) /* 2ACC8 8004F8C8 86620014 */ lh $v0, 0x14($s3) /* 2ACCC 8004F8CC 00822021 */ addu $a0, $a0, $v0 /* 2ACD0 8004F8D0 86020038 */ lh $v0, 0x38($s0) /* 2ACD4 8004F8D4 8683020E */ lh $v1, 0x20e($s4) /* 2ACD8 8004F8D8 00822021 */ addu $a0, $a0, $v0 /* 2ACDC 8004F8DC 0C014E3E */ jal func_800538F8 /* 2ACE0 8004F8E0 00832021 */ addu $a0, $a0, $v1 /* 2ACE4 8004F8E4 8E620000 */ lw $v0, ($s3) /* 2ACE8 8004F8E8 C4420020 */ lwc1 $f2, 0x20($v0) /* 2ACEC 8004F8EC 46020082 */ mul.s $f2, $f0, $f2 /* 2ACF0 8004F8F0 00000000 */ nop /* 2ACF4 8004F8F4 E6620004 */ swc1 $f2, 4($s3) /* 2ACF8 8004F8F8 C6400004 */ lwc1 $f0, 4($s2) /* 2ACFC 8004F8FC 46020032 */ c.eq.s $f0, $f2 /* 2AD00 8004F900 00000000 */ nop /* 2AD04 8004F904 45010005 */ bc1t .L8004F91C /* 2AD08 8004F908 00000000 */ nop /* 2AD0C 8004F90C 92420043 */ lbu $v0, 0x43($s2) /* 2AD10 8004F910 E6420004 */ swc1 $f2, 4($s2) /* 2AD14 8004F914 34420008 */ ori $v0, $v0, 8 /* 2AD18 8004F918 A2420043 */ sb $v0, 0x43($s2) .L8004F91C: /* 2AD1C 8004F91C 92020041 */ lbu $v0, 0x41($s0) /* 2AD20 8004F920 5040008C */ beql $v0, $zero, .L8004FB54 /* 2AD24 8004F924 A2600017 */ sb $zero, 0x17($s3) /* 2AD28 8004F928 8E8300C0 */ lw $v1, 0xc0($s4) /* 2AD2C 8004F92C 8E020018 */ lw $v0, 0x18($s0) /* 2AD30 8004F930 00031D43 */ sra $v1, $v1, 0x15 /* 2AD34 8004F934 00021543 */ sra $v0, $v0, 0x15 /* 2AD38 8004F938 00620018 */ mult $v1, $v0 /* 2AD3C 8004F93C 8E02002C */ lw $v0, 0x2c($s0) /* 2AD40 8004F940 00001812 */ mflo $v1 /* 2AD44 8004F944 00021543 */ sra $v0, $v0, 0x15 /* 2AD48 8004F948 00000000 */ nop /* 2AD4C 8004F94C 00620018 */ mult $v1, $v0 /* 2AD50 8004F950 82030049 */ lb $v1, 0x49($s0) /* 2AD54 8004F954 00002012 */ mflo $a0 /* 2AD58 8004F958 86620008 */ lh $v0, 8($s3) /* 2AD5C 8004F95C 00000000 */ nop /* 2AD60 8004F960 00620018 */ mult $v1, $v0 /* 2AD64 8004F964 00001812 */ mflo $v1 /* 2AD68 8004F968 00041503 */ sra $v0, $a0, 0x14 /* 2AD6C 8004F96C 00000000 */ nop /* 2AD70 8004F970 00430018 */ mult $v0, $v1 /* 2AD74 8004F974 9242003D */ lbu $v0, 0x3d($s2) /* 2AD78 8004F978 34420020 */ ori $v0, $v0, 0x20 /* 2AD7C 8004F97C A242003D */ sb $v0, 0x3d($s2) /* 2AD80 8004F980 00001812 */ mflo $v1 /* 2AD84 8004F984 00031403 */ sra $v0, $v1, 0x10 /* 2AD88 8004F988 08013ED4 */ j .L8004FB50 /* 2AD8C 8004F98C A6420040 */ sh $v0, 0x40($s2) .L8004F990: /* 2AD90 8004F990 92620012 */ lbu $v0, 0x12($s3) /* 2AD94 8004F994 10400027 */ beqz $v0, .L8004FA34 /* 2AD98 8004F998 00000000 */ nop /* 2AD9C 8004F99C 96620010 */ lhu $v0, 0x10($s3) /* 2ADA0 8004F9A0 10400003 */ beqz $v0, .L8004F9B0 /* 2ADA4 8004F9A4 2442FFFF */ addiu $v0, $v0, -1 /* 2ADA8 8004F9A8 08013EA8 */ j .L8004FAA0 /* 2ADAC 8004F9AC A6620010 */ sh $v0, 0x10($s3) .L8004F9B0: /* 2ADB0 8004F9B0 92630013 */ lbu $v1, 0x13($s3) /* 2ADB4 8004F9B4 92020055 */ lbu $v0, 0x55($s0) /* 2ADB8 8004F9B8 00621821 */ addu $v1, $v1, $v0 /* 2ADBC 8004F9BC 00031080 */ sll $v0, $v1, 2 /* 2ADC0 8004F9C0 24440003 */ addiu $a0, $v0, 3 /* 2ADC4 8004F9C4 306200FF */ andi $v0, $v1, 0xff /* 2ADC8 8004F9C8 00023182 */ srl $a2, $v0, 6 /* 2ADCC 8004F9CC A2630013 */ sb $v1, 0x13($s3) /* 2ADD0 8004F9D0 30C300FF */ andi $v1, $a2, 0xff /* 2ADD4 8004F9D4 24020001 */ addiu $v0, $zero, 1 /* 2ADD8 8004F9D8 10620004 */ beq $v1, $v0, .L8004F9EC /* 2ADDC 8004F9DC 0080382D */ daddu $a3, $a0, $zero /* 2ADE0 8004F9E0 24020003 */ addiu $v0, $zero, 3 /* 2ADE4 8004F9E4 54620004 */ bnel $v1, $v0, .L8004F9F8 /* 2ADE8 8004F9E8 30E500FF */ andi $a1, $a3, 0xff .L8004F9EC: /* 2ADEC 8004F9EC 00041027 */ nor $v0, $zero, $a0 /* 2ADF0 8004F9F0 304200FF */ andi $v0, $v0, 0xff /* 2ADF4 8004F9F4 24450001 */ addiu $a1, $v0, 1 .L8004F9F8: /* 2ADF8 8004F9F8 92020056 */ lbu $v0, 0x56($s0) /* 2ADFC 8004F9FC 00A20018 */ mult $a1, $v0 /* 2AE00 8004FA00 24C2FFFE */ addiu $v0, $a2, -2 /* 2AE04 8004FA04 2C420002 */ sltiu $v0, $v0, 2 /* 2AE08 8004FA08 00005812 */ mflo $t3 /* 2AE0C 8004FA0C 10400002 */ beqz $v0, .L8004FA18 /* 2AE10 8004FA10 000B2A03 */ sra $a1, $t3, 8 /* 2AE14 8004FA14 00052823 */ negu $a1, $a1 .L8004FA18: /* 2AE18 8004FA18 8664000A */ lh $a0, 0xa($s3) /* 2AE1C 8004FA1C 86020038 */ lh $v0, 0x38($s0) /* 2AE20 8004FA20 8683020E */ lh $v1, 0x20e($s4) /* 2AE24 8004FA24 00822021 */ addu $a0, $a0, $v0 /* 2AE28 8004FA28 00832021 */ addu $a0, $a0, $v1 /* 2AE2C 8004FA2C 08013E98 */ j .L8004FA60 /* 2AE30 8004FA30 00A42021 */ addu $a0, $a1, $a0 .L8004FA34: /* 2AE34 8004FA34 92020040 */ lbu $v0, 0x40($s0) /* 2AE38 8004FA38 14400004 */ bnez $v0, .L8004FA4C /* 2AE3C 8004FA3C 00000000 */ nop /* 2AE40 8004FA40 8682020E */ lh $v0, 0x20e($s4) /* 2AE44 8004FA44 10400016 */ beqz $v0, .L8004FAA0 /* 2AE48 8004FA48 00000000 */ nop .L8004FA4C: /* 2AE4C 8004FA4C 8664000A */ lh $a0, 0xa($s3) /* 2AE50 8004FA50 86020038 */ lh $v0, 0x38($s0) /* 2AE54 8004FA54 8683020E */ lh $v1, 0x20e($s4) /* 2AE58 8004FA58 00822021 */ addu $a0, $a0, $v0 /* 2AE5C 8004FA5C 00832021 */ addu $a0, $a0, $v1 .L8004FA60: /* 2AE60 8004FA60 0C014E3E */ jal func_800538F8 /* 2AE64 8004FA64 00000000 */ nop /* 2AE68 8004FA68 8E620000 */ lw $v0, ($s3) /* 2AE6C 8004FA6C C4420020 */ lwc1 $f2, 0x20($v0) /* 2AE70 8004FA70 46020082 */ mul.s $f2, $f0, $f2 /* 2AE74 8004FA74 00000000 */ nop /* 2AE78 8004FA78 E6620004 */ swc1 $f2, 4($s3) /* 2AE7C 8004FA7C C6400004 */ lwc1 $f0, 4($s2) /* 2AE80 8004FA80 46020032 */ c.eq.s $f0, $f2 /* 2AE84 8004FA84 00000000 */ nop /* 2AE88 8004FA88 45010005 */ bc1t .L8004FAA0 /* 2AE8C 8004FA8C 00000000 */ nop /* 2AE90 8004FA90 92420043 */ lbu $v0, 0x43($s2) /* 2AE94 8004FA94 E6420004 */ swc1 $f2, 4($s2) /* 2AE98 8004FA98 34420008 */ ori $v0, $v0, 8 /* 2AE9C 8004FA9C A2420043 */ sb $v0, 0x43($s2) .L8004FAA0: /* 2AEA0 8004FAA0 92020041 */ lbu $v0, 0x41($s0) /* 2AEA4 8004FAA4 10400020 */ beqz $v0, .L8004FB28 /* 2AEA8 8004FAA8 00000000 */ nop /* 2AEAC 8004FAAC 8E8300C0 */ lw $v1, 0xc0($s4) /* 2AEB0 8004FAB0 8E020018 */ lw $v0, 0x18($s0) /* 2AEB4 8004FAB4 00031D43 */ sra $v1, $v1, 0x15 /* 2AEB8 8004FAB8 00021543 */ sra $v0, $v0, 0x15 /* 2AEBC 8004FABC 00620018 */ mult $v1, $v0 /* 2AEC0 8004FAC0 8E02002C */ lw $v0, 0x2c($s0) /* 2AEC4 8004FAC4 00001812 */ mflo $v1 /* 2AEC8 8004FAC8 00021543 */ sra $v0, $v0, 0x15 /* 2AECC 8004FACC 00000000 */ nop /* 2AED0 8004FAD0 00620018 */ mult $v1, $v0 /* 2AED4 8004FAD4 82030049 */ lb $v1, 0x49($s0) /* 2AED8 8004FAD8 00002012 */ mflo $a0 /* 2AEDC 8004FADC 92620016 */ lbu $v0, 0x16($s3) /* 2AEE0 8004FAE0 00000000 */ nop /* 2AEE4 8004FAE4 00620018 */ mult $v1, $v0 /* 2AEE8 8004FAE8 00001812 */ mflo $v1 /* 2AEEC 8004FAEC 00041503 */ sra $v0, $a0, 0x14 /* 2AEF0 8004FAF0 00000000 */ nop /* 2AEF4 8004FAF4 00430018 */ mult $v0, $v1 /* 2AEF8 8004FAF8 00001812 */ mflo $v1 /* 2AEFC 8004FAFC 00031A43 */ sra $v1, $v1, 9 /* 2AF00 8004FB00 A6630008 */ sh $v1, 8($s3) /* 2AF04 8004FB04 9242003D */ lbu $v0, 0x3d($s2) /* 2AF08 8004FB08 A6430040 */ sh $v1, 0x40($s2) /* 2AF0C 8004FB0C 34420020 */ ori $v0, $v0, 0x20 /* 2AF10 8004FB10 A242003D */ sb $v0, 0x3d($s2) /* 2AF14 8004FB14 9202004A */ lbu $v0, 0x4a($s0) /* 2AF18 8004FB18 A242000E */ sb $v0, 0xe($s2) /* 2AF1C 8004FB1C 9202004B */ lbu $v0, 0x4b($s0) /* 2AF20 8004FB20 08013ED4 */ j .L8004FB50 /* 2AF24 8004FB24 A242000F */ sb $v0, 0xf($s2) .L8004FB28: /* 2AF28 8004FB28 96020042 */ lhu $v0, 0x42($s0) /* 2AF2C 8004FB2C 50400009 */ beql $v0, $zero, .L8004FB54 /* 2AF30 8004FB30 A2600017 */ sb $zero, 0x17($s3) /* 2AF34 8004FB34 9202004A */ lbu $v0, 0x4a($s0) /* 2AF38 8004FB38 A242000E */ sb $v0, 0xe($s2) /* 2AF3C 8004FB3C 92420043 */ lbu $v0, 0x43($s2) /* 2AF40 8004FB40 9203004B */ lbu $v1, 0x4b($s0) /* 2AF44 8004FB44 34420010 */ ori $v0, $v0, 0x10 /* 2AF48 8004FB48 A2420043 */ sb $v0, 0x43($s2) /* 2AF4C 8004FB4C A243000F */ sb $v1, 0xf($s2) .L8004FB50: /* 2AF50 8004FB50 A2600017 */ sb $zero, 0x17($s3) .L8004FB54: /* 2AF54 8004FB54 26B50001 */ addiu $s5, $s5, 1 .L8004FB58: /* 2AF58 8004FB58 92020053 */ lbu $v0, 0x53($s0) /* 2AF5C 8004FB5C 32A400FF */ andi $a0, $s5, 0xff /* 2AF60 8004FB60 0082102B */ sltu $v0, $a0, $v0 /* 2AF64 8004FB64 1440FF31 */ bnez $v0, .L8004F82C /* 2AF68 8004FB68 00000000 */ nop /* 2AF6C 8004FB6C 26F70001 */ addiu $s7, $s7, 1 .L8004FB70: /* 2AF70 8004FB70 2EE20010 */ sltiu $v0, $s7, 0x10 /* 2AF74 8004FB74 1440FCAA */ bnez $v0, .L8004EE20 /* 2AF78 8004FB78 00171040 */ sll $v0, $s7, 1 /* 2AF7C 8004FB7C 93A20028 */ lbu $v0, 0x28($sp) /* 2AF80 8004FB80 10400002 */ beqz $v0, .L8004FB8C /* 2AF84 8004FB84 24020002 */ addiu $v0, $zero, 2 /* 2AF88 8004FB88 A2820221 */ sb $v0, 0x221($s4) .L8004FB8C: /* 2AF8C 8004FB8C 8FBF0054 */ lw $ra, 0x54($sp) /* 2AF90 8004FB90 8FBE0050 */ lw $fp, 0x50($sp) /* 2AF94 8004FB94 8FB7004C */ lw $s7, 0x4c($sp) /* 2AF98 8004FB98 8FB60048 */ lw $s6, 0x48($sp) /* 2AF9C 8004FB9C 8FB50044 */ lw $s5, 0x44($sp) /* 2AFA0 8004FBA0 8FB40040 */ lw $s4, 0x40($sp) /* 2AFA4 8004FBA4 8FB3003C */ lw $s3, 0x3c($sp) /* 2AFA8 8004FBA8 8FB20038 */ lw $s2, 0x38($sp) /* 2AFAC 8004FBAC 8FB10034 */ lw $s1, 0x34($sp) /* 2AFB0 8004FBB0 8FB00030 */ lw $s0, 0x30($sp) /* 2AFB4 8004FBB4 03E00008 */ jr $ra /* 2AFB8 8004FBB8 27BD0058 */ addiu $sp, $sp, 0x58