# Mario Kart 64 (U) disassembly and split file # generated by n64split v0.4a - N64 ROM splitter # assembler directives .set noat # allow manual use of $at .set noreorder # don't insert nops after branches .set gp=64 .include "macros.inc" .section .text, "ax" glabel func_80086E70 /* 087A70 80086E70 000478C0 */ sll $t7, $a0, 3 /* 087A74 80086E74 01E47823 */ subu $t7, $t7, $a0 /* 087A78 80086E78 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087A7C 80086E7C 000F7940 */ sll $t7, $t7, 5 /* 087A80 80086E80 3C018016 */ lui $at, %hi(D_80165CC6) # 0x8016 /* 087A84 80086E84 AFBF0014 */ sw $ra, 0x14($sp) /* 087A88 80086E88 002F0821 */ addu $at, $at, $t7 /* 087A8C 80086E8C 240E0001 */ li $t6, 1 /* 087A90 80086E90 A42E5CC6 */ sh $t6, %lo(D_80165CC6)($at) # 0x5cc6($at) /* 087A94 80086E94 0C01C87A */ jal func_800721E8 /* 087A98 80086E98 24050008 */ li $a1, 8 /* 087A9C 80086E9C 8FBF0014 */ lw $ra, 0x14($sp) /* 087AA0 80086EA0 27BD0018 */ addiu $sp, $sp, 0x18 /* 087AA4 80086EA4 03E00008 */ jr $ra /* 087AA8 80086EA8 00000000 */ nop glabel func_80086EAC /* 087AAC 80086EAC 0004C0C0 */ sll $t8, $a0, 3 /* 087AB0 80086EB0 0304C023 */ subu $t8, $t8, $a0 /* 087AB4 80086EB4 3C198016 */ lui $t9, %hi(D_80165C18) # $t9, 0x8016 /* 087AB8 80086EB8 27395C18 */ addiu $t9, %lo(D_80165C18) # addiu $t9, $t9, 0x5c18 /* 087ABC 80086EBC 0018C140 */ sll $t8, $t8, 5 /* 087AC0 80086EC0 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087AC4 80086EC4 03191021 */ addu $v0, $t8, $t9 /* 087AC8 80086EC8 AFBF0014 */ sw $ra, 0x14($sp) /* 087ACC 80086ECC A04500DD */ sb $a1, 0xdd($v0) /* 087AD0 80086ED0 AFA60020 */ sw $a2, 0x20($sp) /* 087AD4 80086ED4 A44600AE */ sh $a2, 0xae($v0) /* 087AD8 80086ED8 0C01C87A */ jal func_800721E8 /* 087ADC 80086EDC 24050008 */ li $a1, 8 /* 087AE0 80086EE0 8FBF0014 */ lw $ra, 0x14($sp) /* 087AE4 80086EE4 27BD0018 */ addiu $sp, $sp, 0x18 /* 087AE8 80086EE8 03E00008 */ jr $ra /* 087AEC 80086EEC 00000000 */ nop glabel func_80086EF0 /* 087AF0 80086EF0 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087AF4 80086EF4 AFBF0014 */ sw $ra, 0x14($sp) /* 087AF8 80086EF8 0C021B9C */ jal func_80086E70 /* 087AFC 80086EFC 00000000 */ nop /* 087B00 80086F00 8FBF0014 */ lw $ra, 0x14($sp) /* 087B04 80086F04 27BD0018 */ addiu $sp, $sp, 0x18 /* 087B08 80086F08 03E00008 */ jr $ra /* 087B0C 80086F0C 00000000 */ nop glabel func_80086F10 /* 087B10 80086F10 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087B14 80086F14 AFBF0014 */ sw $ra, 0x14($sp) /* 087B18 80086F18 AFA40018 */ sw $a0, 0x18($sp) /* 087B1C 80086F1C AFA5001C */ sw $a1, 0x1c($sp) /* 087B20 80086F20 0C021B9C */ jal func_80086E70 /* 087B24 80086F24 AFA60020 */ sw $a2, 0x20($sp) /* 087B28 80086F28 8FAE0018 */ lw $t6, 0x18($sp) /* 087B2C 80086F2C 8FBF0014 */ lw $ra, 0x14($sp) /* 087B30 80086F30 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 087B34 80086F34 000E78C0 */ sll $t7, $t6, 3 /* 087B38 80086F38 01EE7823 */ subu $t7, $t7, $t6 /* 087B3C 80086F3C 8FB9001C */ lw $t9, 0x1c($sp) /* 087B40 80086F40 8FA80020 */ lw $t0, 0x20($sp) /* 087B44 80086F44 000F7940 */ sll $t7, $t7, 5 /* 087B48 80086F48 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 087B4C 80086F4C 01F81021 */ addu $v0, $t7, $t8 /* 087B50 80086F50 27BD0018 */ addiu $sp, $sp, 0x18 /* 087B54 80086F54 A05900DE */ sb $t9, 0xde($v0) /* 087B58 80086F58 03E00008 */ jr $ra /* 087B5C 80086F5C AC480080 */ sw $t0, 0x80($v0) glabel func_80086F60 /* 087B60 80086F60 000470C0 */ sll $t6, $a0, 3 /* 087B64 80086F64 01C47023 */ subu $t6, $t6, $a0 /* 087B68 80086F68 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 087B6C 80086F6C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 087B70 80086F70 000E7140 */ sll $t6, $t6, 5 /* 087B74 80086F74 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087B78 80086F78 01CF1021 */ addu $v0, $t6, $t7 /* 087B7C 80086F7C AFBF0014 */ sw $ra, 0x14($sp) /* 087B80 80086F80 A44000AE */ sh $zero, 0xae($v0) /* 087B84 80086F84 A04000DD */ sb $zero, 0xdd($v0) /* 087B88 80086F88 A04000DE */ sb $zero, 0xde($v0) /* 087B8C 80086F8C 0C01C87A */ jal func_800721E8 /* 087B90 80086F90 24050008 */ li $a1, 8 /* 087B94 80086F94 8FBF0014 */ lw $ra, 0x14($sp) /* 087B98 80086F98 27BD0018 */ addiu $sp, $sp, 0x18 /* 087B9C 80086F9C 03E00008 */ jr $ra /* 087BA0 80086FA0 00000000 */ nop glabel func_80086FA4 /* 087BA4 80086FA4 000470C0 */ sll $t6, $a0, 3 /* 087BA8 80086FA8 01C47023 */ subu $t6, $t6, $a0 /* 087BAC 80086FAC 000E7140 */ sll $t6, $t6, 5 /* 087BB0 80086FB0 3C0F8016 */ lui $t7, %hi(D_80165CC6) # 0x8016 /* 087BB4 80086FB4 01EE7821 */ addu $t7, $t7, $t6 /* 087BB8 80086FB8 85EF5CC6 */ lh $t7, %lo(D_80165CC6)($t7) # 0x5cc6($t7) /* 087BBC 80086FBC 00001825 */ move $v1, $zero /* 087BC0 80086FC0 15E00002 */ bnez $t7, .L80086FCC /* 087BC4 80086FC4 00000000 */ nop /* 087BC8 80086FC8 24030001 */ li $v1, 1 .L80086FCC: /* 087BCC 80086FCC 03E00008 */ jr $ra /* 087BD0 80086FD0 00601025 */ move $v0, $v1 glabel func_80086FD4 /* 087BD4 80086FD4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087BD8 80086FD8 AFBF0014 */ sw $ra, 0x14($sp) /* 087BDC 80086FDC AFA40018 */ sw $a0, 0x18($sp) /* 087BE0 80086FE0 0C01C87A */ jal func_800721E8 /* 087BE4 80086FE4 24050008 */ li $a1, 8 /* 087BE8 80086FE8 8FAE0018 */ lw $t6, 0x18($sp) /* 087BEC 80086FEC 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 087BF0 80086FF0 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 087BF4 80086FF4 000E78C0 */ sll $t7, $t6, 3 /* 087BF8 80086FF8 01EE7823 */ subu $t7, $t7, $t6 /* 087BFC 80086FFC 000F7940 */ sll $t7, $t7, 5 /* 087C00 80087000 01F81021 */ addu $v0, $t7, $t8 /* 087C04 80087004 845900AE */ lh $t9, 0xae($v0) /* 087C08 80087008 8FBF0014 */ lw $ra, 0x14($sp) /* 087C0C 8008700C 27BD0018 */ addiu $sp, $sp, 0x18 /* 087C10 80087010 27280001 */ addiu $t0, $t9, 1 /* 087C14 80087014 03E00008 */ jr $ra /* 087C18 80087018 A44800AE */ sh $t0, 0xae($v0) glabel func_8008701C /* 087C1C 8008701C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087C20 80087020 AFBF0014 */ sw $ra, 0x14($sp) /* 087C24 80087024 AFA5001C */ sw $a1, 0x1c($sp) /* 087C28 80087028 AFA40018 */ sw $a0, 0x18($sp) /* 087C2C 8008702C 0C01C87A */ jal func_800721E8 /* 087C30 80087030 24050008 */ li $a1, 8 /* 087C34 80087034 8FAF0018 */ lw $t7, 0x18($sp) /* 087C38 80087038 8FBF0014 */ lw $ra, 0x14($sp) /* 087C3C 8008703C 8FAE001C */ lw $t6, 0x1c($sp) /* 087C40 80087040 000FC0C0 */ sll $t8, $t7, 3 /* 087C44 80087044 030FC023 */ subu $t8, $t8, $t7 /* 087C48 80087048 0018C140 */ sll $t8, $t8, 5 /* 087C4C 8008704C 3C018016 */ lui $at, %hi(D_80165CC6) # 0x8016 /* 087C50 80087050 00380821 */ addu $at, $at, $t8 /* 087C54 80087054 27BD0018 */ addiu $sp, $sp, 0x18 /* 087C58 80087058 03E00008 */ jr $ra /* 087C5C 8008705C A42E5CC6 */ sh $t6, %lo(D_80165CC6)($at) # 0x5cc6($at) glabel func_80087060 /* 087C60 80087060 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 087C64 80087064 AFBF0014 */ sw $ra, 0x14($sp) /* 087C68 80087068 AFA50024 */ sw $a1, 0x24($sp) /* 087C6C 8008706C AFA0001C */ sw $zero, 0x1c($sp) /* 087C70 80087070 24050008 */ li $a1, 8 /* 087C74 80087074 0C01C89C */ jal func_80072270 /* 087C78 80087078 AFA40020 */ sw $a0, 0x20($sp) /* 087C7C 8008707C 1040000C */ beqz $v0, .L800870B0 /* 087C80 80087080 8FA40020 */ lw $a0, 0x20($sp) /* 087C84 80087084 24050008 */ li $a1, 8 /* 087C88 80087088 0C01C870 */ jal func_800721C0 /* 087C8C 8008708C AFA40020 */ sw $a0, 0x20($sp) /* 087C90 80087090 8FA40020 */ lw $a0, 0x20($sp) /* 087C94 80087094 8FAE0024 */ lw $t6, 0x24($sp) /* 087C98 80087098 3C018016 */ lui $at, %hi(D_80165CC8) # 0x8016 /* 087C9C 8008709C 000478C0 */ sll $t7, $a0, 3 /* 087CA0 800870A0 01E47823 */ subu $t7, $t7, $a0 /* 087CA4 800870A4 000F7940 */ sll $t7, $t7, 5 /* 087CA8 800870A8 002F0821 */ addu $at, $at, $t7 /* 087CAC 800870AC A42E5CC8 */ sh $t6, %lo(D_80165CC8)($at) # 0x5cc8($at) .L800870B0: /* 087CB0 800870B0 0004C0C0 */ sll $t8, $a0, 3 /* 087CB4 800870B4 0304C023 */ subu $t8, $t8, $a0 /* 087CB8 800870B8 3C198016 */ lui $t9, %hi(D_80165C18) # $t9, 0x8016 /* 087CBC 800870BC 27395C18 */ addiu $t9, %lo(D_80165C18) # addiu $t9, $t9, 0x5c18 /* 087CC0 800870C0 0018C140 */ sll $t8, $t8, 5 /* 087CC4 800870C4 03191021 */ addu $v0, $t8, $t9 /* 087CC8 800870C8 844800B0 */ lh $t0, 0xb0($v0) /* 087CCC 800870CC 2509FFFF */ addiu $t1, $t0, -1 /* 087CD0 800870D0 A44900B0 */ sh $t1, 0xb0($v0) /* 087CD4 800870D4 844A00B0 */ lh $t2, 0xb0($v0) /* 087CD8 800870D8 05430006 */ bgezl $t2, .L800870F4 /* 087CDC 800870DC 8FBF0014 */ lw $ra, 0x14($sp) /* 087CE0 800870E0 0C01C87A */ jal func_800721E8 /* 087CE4 800870E4 24050008 */ li $a1, 8 /* 087CE8 800870E8 240B0001 */ li $t3, 1 /* 087CEC 800870EC AFAB001C */ sw $t3, 0x1c($sp) /* 087CF0 800870F0 8FBF0014 */ lw $ra, 0x14($sp) .L800870F4: /* 087CF4 800870F4 8FA2001C */ lw $v0, 0x1c($sp) /* 087CF8 800870F8 27BD0020 */ addiu $sp, $sp, 0x20 /* 087CFC 800870FC 03E00008 */ jr $ra /* 087D00 80087100 00000000 */ nop glabel func_80087104 /* 087D04 80087104 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 087D08 80087108 AFBF001C */ sw $ra, 0x1c($sp) /* 087D0C 8008710C AFB00018 */ sw $s0, 0x18($sp) /* 087D10 80087110 AFA5002C */ sw $a1, 0x2c($sp) /* 087D14 80087114 00808025 */ move $s0, $a0 /* 087D18 80087118 AFA00024 */ sw $zero, 0x24($sp) /* 087D1C 8008711C 0C01C89C */ jal func_80072270 /* 087D20 80087120 24050008 */ li $a1, 8 /* 087D24 80087124 1040000B */ beqz $v0, .L80087154 /* 087D28 80087128 02002025 */ move $a0, $s0 /* 087D2C 8008712C 0C01C870 */ jal func_800721C0 /* 087D30 80087130 24050008 */ li $a1, 8 /* 087D34 80087134 0C0ADF8D */ jal random_int /* 087D38 80087138 97A4002E */ lhu $a0, 0x2e($sp) /* 087D3C 8008713C 001070C0 */ sll $t6, $s0, 3 /* 087D40 80087140 01D07023 */ subu $t6, $t6, $s0 /* 087D44 80087144 000E7140 */ sll $t6, $t6, 5 /* 087D48 80087148 3C018016 */ lui $at, %hi(D_80165CC8) # 0x8016 /* 087D4C 8008714C 002E0821 */ addu $at, $at, $t6 /* 087D50 80087150 A4225CC8 */ sh $v0, %lo(D_80165CC8)($at) # 0x5cc8($at) .L80087154: /* 087D54 80087154 001078C0 */ sll $t7, $s0, 3 /* 087D58 80087158 01F07823 */ subu $t7, $t7, $s0 /* 087D5C 8008715C 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 087D60 80087160 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 087D64 80087164 000F7940 */ sll $t7, $t7, 5 /* 087D68 80087168 01F81021 */ addu $v0, $t7, $t8 /* 087D6C 8008716C 845900B0 */ lh $t9, 0xb0($v0) /* 087D70 80087170 02002025 */ move $a0, $s0 /* 087D74 80087174 2728FFFF */ addiu $t0, $t9, -1 /* 087D78 80087178 A44800B0 */ sh $t0, 0xb0($v0) /* 087D7C 8008717C 844900B0 */ lh $t1, 0xb0($v0) /* 087D80 80087180 05230006 */ bgezl $t1, .L8008719C /* 087D84 80087184 8FBF001C */ lw $ra, 0x1c($sp) /* 087D88 80087188 0C01C87A */ jal func_800721E8 /* 087D8C 8008718C 24050008 */ li $a1, 8 /* 087D90 80087190 240A0001 */ li $t2, 1 /* 087D94 80087194 AFAA0024 */ sw $t2, 0x24($sp) /* 087D98 80087198 8FBF001C */ lw $ra, 0x1c($sp) .L8008719C: /* 087D9C 8008719C 8FA20024 */ lw $v0, 0x24($sp) /* 087DA0 800871A0 8FB00018 */ lw $s0, 0x18($sp) /* 087DA4 800871A4 03E00008 */ jr $ra /* 087DA8 800871A8 27BD0028 */ addiu $sp, $sp, 0x28 glabel func_800871AC /* 087DAC 800871AC 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 087DB0 800871B0 AFBF001C */ sw $ra, 0x1c($sp) /* 087DB4 800871B4 AFB00018 */ sw $s0, 0x18($sp) /* 087DB8 800871B8 AFA5002C */ sw $a1, 0x2c($sp) /* 087DBC 800871BC 00808025 */ move $s0, $a0 /* 087DC0 800871C0 AFA00024 */ sw $zero, 0x24($sp) /* 087DC4 800871C4 0C01C89C */ jal func_80072270 /* 087DC8 800871C8 24050008 */ li $a1, 8 /* 087DCC 800871CC 1040000A */ beqz $v0, .L800871F8 /* 087DD0 800871D0 02002025 */ move $a0, $s0 /* 087DD4 800871D4 0C01C870 */ jal func_800721C0 /* 087DD8 800871D8 24050008 */ li $a1, 8 /* 087DDC 800871DC 001078C0 */ sll $t7, $s0, 3 /* 087DE0 800871E0 8FAE002C */ lw $t6, 0x2c($sp) /* 087DE4 800871E4 01F07823 */ subu $t7, $t7, $s0 /* 087DE8 800871E8 000F7940 */ sll $t7, $t7, 5 /* 087DEC 800871EC 3C018016 */ lui $at, %hi(D_80165CC8) # 0x8016 /* 087DF0 800871F0 002F0821 */ addu $at, $at, $t7 /* 087DF4 800871F4 A42E5CC8 */ sh $t6, %lo(D_80165CC8)($at) # 0x5cc8($at) .L800871F8: /* 087DF8 800871F8 0010C0C0 */ sll $t8, $s0, 3 /* 087DFC 800871FC 0310C023 */ subu $t8, $t8, $s0 /* 087E00 80087200 3C198016 */ lui $t9, %hi(D_80165C18) # $t9, 0x8016 /* 087E04 80087204 27395C18 */ addiu $t9, %lo(D_80165C18) # addiu $t9, $t9, 0x5c18 /* 087E08 80087208 0018C140 */ sll $t8, $t8, 5 /* 087E0C 8008720C 03191021 */ addu $v0, $t8, $t9 /* 087E10 80087210 844800B0 */ lh $t0, 0xb0($v0) /* 087E14 80087214 02002025 */ move $a0, $s0 /* 087E18 80087218 2509FFFF */ addiu $t1, $t0, -1 /* 087E1C 8008721C A44900B0 */ sh $t1, 0xb0($v0) /* 087E20 80087220 844A00B0 */ lh $t2, 0xb0($v0) /* 087E24 80087224 05430008 */ bgezl $t2, .L80087248 /* 087E28 80087228 8FBF001C */ lw $ra, 0x1c($sp) /* 087E2C 8008722C 0C01C87A */ jal func_800721E8 /* 087E30 80087230 24050008 */ li $a1, 8 /* 087E34 80087234 0C021BF5 */ jal func_80086FD4 /* 087E38 80087238 02002025 */ move $a0, $s0 /* 087E3C 8008723C 240B0001 */ li $t3, 1 /* 087E40 80087240 AFAB0024 */ sw $t3, 0x24($sp) /* 087E44 80087244 8FBF001C */ lw $ra, 0x1c($sp) .L80087248: /* 087E48 80087248 8FA20024 */ lw $v0, 0x24($sp) /* 087E4C 8008724C 8FB00018 */ lw $s0, 0x18($sp) /* 087E50 80087250 03E00008 */ jr $ra /* 087E54 80087254 27BD0028 */ addiu $sp, $sp, 0x28 /* 087E58 80087258 000470C0 */ sll $t6, $a0, 3 /* 087E5C 8008725C 01C47023 */ subu $t6, $t6, $a0 /* 087E60 80087260 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 087E64 80087264 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 087E68 80087268 000E7140 */ sll $t6, $t6, 5 /* 087E6C 8008726C 01CF1021 */ addu $v0, $t6, $t7 /* 087E70 80087270 44866000 */ mtc1 $a2, $f12 /* 087E74 80087274 C444002C */ lwc1 $f4, 0x2c($v0) /* 087E78 80087278 C4480030 */ lwc1 $f8, 0x30($v0) /* 087E7C 8008727C AFA50004 */ sw $a1, 4($sp) /* 087E80 80087280 460C2180 */ add.s $f6, $f4, $f12 /* 087E84 80087284 460C4281 */ sub.s $f10, $f8, $f12 /* 087E88 80087288 E446002C */ swc1 $f6, 0x2c($v0) /* 087E8C 8008728C 03E00008 */ jr $ra /* 087E90 80087290 E44A0030 */ swc1 $f10, 0x30($v0) /* 087E94 80087294 000470C0 */ sll $t6, $a0, 3 /* 087E98 80087298 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087E9C 8008729C 01C47023 */ subu $t6, $t6, $a0 /* 087EA0 800872A0 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 087EA4 800872A4 AFBF0014 */ sw $ra, 0x14($sp) /* 087EA8 800872A8 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 087EAC 800872AC 000E7140 */ sll $t6, $t6, 5 /* 087EB0 800872B0 01CF1021 */ addu $v0, $t6, $t7 /* 087EB4 800872B4 C44E0004 */ lwc1 $f14, 4($v0) /* 087EB8 800872B8 8C47000C */ lw $a3, 0xc($v0) /* 087EBC 800872BC 8CA6001C */ lw $a2, 0x1c($a1) /* 087EC0 800872C0 0C0105DC */ jal func_80041770 /* 087EC4 800872C4 C4AC0014 */ lwc1 $f12, 0x14($a1) /* 087EC8 800872C8 8FBF0014 */ lw $ra, 0x14($sp) /* 087ECC 800872CC 27BD0018 */ addiu $sp, $sp, 0x18 /* 087ED0 800872D0 03E00008 */ jr $ra /* 087ED4 800872D4 00000000 */ nop glabel func_800872D8 /* 087ED8 800872D8 000470C0 */ sll $t6, $a0, 3 /* 087EDC 800872DC 01C47023 */ subu $t6, $t6, $a0 /* 087EE0 800872E0 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 087EE4 800872E4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087EE8 800872E8 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 087EEC 800872EC 000E7140 */ sll $t6, $t6, 5 /* 087EF0 800872F0 AFBF0014 */ sw $ra, 0x14($sp) /* 087EF4 800872F4 01CF1021 */ addu $v0, $t6, $t7 /* 087EF8 800872F8 C4440004 */ lwc1 $f4, 4($v0) /* 087EFC 800872FC C448000C */ lwc1 $f8, 0xc($v0) /* 087F00 80087300 C4AA0008 */ lwc1 $f10, 8($a1) /* 087F04 80087304 C4A60000 */ lwc1 $f6, ($a1) /* 087F08 80087308 460A4381 */ sub.s $f14, $f8, $f10 /* 087F0C 8008730C 0C0ADE0C */ jal func_802B7830 /* 087F10 80087310 46062301 */ sub.s $f12, $f4, $f6 /* 087F14 80087314 8FBF0014 */ lw $ra, 0x14($sp) /* 087F18 80087318 27BD0018 */ addiu $sp, $sp, 0x18 /* 087F1C 8008731C 03E00008 */ jr $ra /* 087F20 80087320 00000000 */ nop glabel func_80087324 /* 087F24 80087324 000470C0 */ sll $t6, $a0, 3 /* 087F28 80087328 01C47023 */ subu $t6, $t6, $a0 /* 087F2C 8008732C 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 087F30 80087330 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087F34 80087334 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 087F38 80087338 000E7140 */ sll $t6, $t6, 5 /* 087F3C 8008733C AFBF0014 */ sw $ra, 0x14($sp) /* 087F40 80087340 01CF1021 */ addu $v0, $t6, $t7 /* 087F44 80087344 C44C003C */ lwc1 $f12, 0x3c($v0) /* 087F48 80087348 0C0ADE0C */ jal func_802B7830 /* 087F4C 8008734C C44E0040 */ lwc1 $f14, 0x40($v0) /* 087F50 80087350 8FBF0014 */ lw $ra, 0x14($sp) /* 087F54 80087354 00021023 */ negu $v0, $v0 /* 087F58 80087358 3058FFFF */ andi $t8, $v0, 0xffff /* 087F5C 8008735C 03001025 */ move $v0, $t8 /* 087F60 80087360 03E00008 */ jr $ra /* 087F64 80087364 27BD0018 */ addiu $sp, $sp, 0x18 glabel func_80087368 /* 087F68 80087368 000470C0 */ sll $t6, $a0, 3 /* 087F6C 8008736C 01C47023 */ subu $t6, $t6, $a0 /* 087F70 80087370 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 087F74 80087374 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 087F78 80087378 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 087F7C 8008737C 000E7140 */ sll $t6, $t6, 5 /* 087F80 80087380 AFBF0014 */ sw $ra, 0x14($sp) /* 087F84 80087384 01CF1021 */ addu $v0, $t6, $t7 /* 087F88 80087388 C44C0038 */ lwc1 $f12, 0x38($v0) /* 087F8C 8008738C 0C0ADE0C */ jal func_802B7830 /* 087F90 80087390 C44E0040 */ lwc1 $f14, 0x40($v0) /* 087F94 80087394 8FBF0014 */ lw $ra, 0x14($sp) /* 087F98 80087398 27BD0018 */ addiu $sp, $sp, 0x18 /* 087F9C 8008739C 03E00008 */ jr $ra /* 087FA0 800873A0 00000000 */ nop /* 087FA4 800873A4 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 087FA8 800873A8 AFBF0014 */ sw $ra, 0x14($sp) /* 087FAC 800873AC 0C021CC9 */ jal func_80087324 /* 087FB0 800873B0 AFA40020 */ sw $a0, 0x20($sp) /* 087FB4 800873B4 8FAE0020 */ lw $t6, 0x20($sp) /* 087FB8 800873B8 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 087FBC 800873BC 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 087FC0 800873C0 000E78C0 */ sll $t7, $t6, 3 /* 087FC4 800873C4 01EE7823 */ subu $t7, $t7, $t6 /* 087FC8 800873C8 000F7940 */ sll $t7, $t7, 5 /* 087FCC 800873CC 01F81821 */ addu $v1, $t7, $t8 /* 087FD0 800873D0 946400BE */ lhu $a0, 0xbe($v1) /* 087FD4 800873D4 AFA30018 */ sw $v1, 0x18($sp) /* 087FD8 800873D8 0C0105ED */ jal func_800417B4 /* 087FDC 800873DC 3045FFFF */ andi $a1, $v0, 0xffff /* 087FE0 800873E0 8FBF0014 */ lw $ra, 0x14($sp) /* 087FE4 800873E4 8FA30018 */ lw $v1, 0x18($sp) /* 087FE8 800873E8 27BD0020 */ addiu $sp, $sp, 0x20 /* 087FEC 800873EC 03E00008 */ jr $ra /* 087FF0 800873F0 A46200BE */ sh $v0, 0xbe($v1) glabel func_800873F4 /* 087FF4 800873F4 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 087FF8 800873F8 AFBF0014 */ sw $ra, 0x14($sp) /* 087FFC 800873FC 0C021CDA */ jal func_80087368 /* 088000 80087400 AFA40020 */ sw $a0, 0x20($sp) /* 088004 80087404 8FAE0020 */ lw $t6, 0x20($sp) /* 088008 80087408 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08800C 8008740C 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 088010 80087410 000E78C0 */ sll $t7, $t6, 3 /* 088014 80087414 01EE7823 */ subu $t7, $t7, $t6 /* 088018 80087418 000F7940 */ sll $t7, $t7, 5 /* 08801C 8008741C 01F81821 */ addu $v1, $t7, $t8 /* 088020 80087420 946400C0 */ lhu $a0, 0xc0($v1) /* 088024 80087424 AFA30018 */ sw $v1, 0x18($sp) /* 088028 80087428 0C0105ED */ jal func_800417B4 /* 08802C 8008742C 3045FFFF */ andi $a1, $v0, 0xffff /* 088030 80087430 8FBF0014 */ lw $ra, 0x14($sp) /* 088034 80087434 8FA30018 */ lw $v1, 0x18($sp) /* 088038 80087438 27BD0020 */ addiu $sp, $sp, 0x20 /* 08803C 8008743C 03E00008 */ jr $ra /* 088040 80087440 A46200C0 */ sh $v0, 0xc0($v1) /* 088044 80087444 000470C0 */ sll $t6, $a0, 3 /* 088048 80087448 01C47023 */ subu $t6, $t6, $a0 /* 08804C 8008744C 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 088050 80087450 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 088054 80087454 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088058 80087458 000E7140 */ sll $t6, $t6, 5 /* 08805C 8008745C AFBF0014 */ sw $ra, 0x14($sp) /* 088060 80087460 01CF1021 */ addu $v0, $t6, $t7 /* 088064 80087464 944400C0 */ lhu $a0, 0xc0($v0) /* 088068 80087468 0C0AE006 */ jal func_802B8018 /* 08806C 8008746C AFA2001C */ sw $v0, 0x1c($sp) /* 088070 80087470 8FA2001C */ lw $v0, 0x1c($sp) /* 088074 80087474 8FBF0014 */ lw $ra, 0x14($sp) /* 088078 80087478 C4440034 */ lwc1 $f4, 0x34($v0) /* 08807C 8008747C 27BD0020 */ addiu $sp, $sp, 0x20 /* 088080 80087480 46040182 */ mul.s $f6, $f0, $f4 /* 088084 80087484 03E00008 */ jr $ra /* 088088 80087488 E4460038 */ swc1 $f6, 0x38($v0) /* 08808C 8008748C 000470C0 */ sll $t6, $a0, 3 /* 088090 80087490 01C47023 */ subu $t6, $t6, $a0 /* 088094 80087494 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 088098 80087498 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08809C 8008749C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 0880A0 800874A0 000E7140 */ sll $t6, $t6, 5 /* 0880A4 800874A4 AFBF0014 */ sw $ra, 0x14($sp) /* 0880A8 800874A8 01CF1021 */ addu $v0, $t6, $t7 /* 0880AC 800874AC 944400BE */ lhu $a0, 0xbe($v0) /* 0880B0 800874B0 0C0AE00E */ jal func_802B8038 /* 0880B4 800874B4 AFA2001C */ sw $v0, 0x1c($sp) /* 0880B8 800874B8 8FA2001C */ lw $v0, 0x1c($sp) /* 0880BC 800874BC 8FBF0014 */ lw $ra, 0x14($sp) /* 0880C0 800874C0 C4440034 */ lwc1 $f4, 0x34($v0) /* 0880C4 800874C4 27BD0020 */ addiu $sp, $sp, 0x20 /* 0880C8 800874C8 46040182 */ mul.s $f6, $f0, $f4 /* 0880CC 800874CC 03E00008 */ jr $ra /* 0880D0 800874D0 E446003C */ swc1 $f6, 0x3c($v0) /* 0880D4 800874D4 000470C0 */ sll $t6, $a0, 3 /* 0880D8 800874D8 01C47023 */ subu $t6, $t6, $a0 /* 0880DC 800874DC 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 0880E0 800874E0 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0880E4 800874E4 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 0880E8 800874E8 000E7140 */ sll $t6, $t6, 5 /* 0880EC 800874EC AFBF0014 */ sw $ra, 0x14($sp) /* 0880F0 800874F0 01CF1021 */ addu $v0, $t6, $t7 /* 0880F4 800874F4 944400C0 */ lhu $a0, 0xc0($v0) /* 0880F8 800874F8 0C0AE00E */ jal func_802B8038 /* 0880FC 800874FC AFA2001C */ sw $v0, 0x1c($sp) /* 088100 80087500 8FA2001C */ lw $v0, 0x1c($sp) /* 088104 80087504 8FBF0014 */ lw $ra, 0x14($sp) /* 088108 80087508 C4440034 */ lwc1 $f4, 0x34($v0) /* 08810C 8008750C 27BD0020 */ addiu $sp, $sp, 0x20 /* 088110 80087510 46040182 */ mul.s $f6, $f0, $f4 /* 088114 80087514 03E00008 */ jr $ra /* 088118 80087518 E4460040 */ swc1 $f6, 0x40($v0) glabel func_8008751C /* 08811C 8008751C 000470C0 */ sll $t6, $a0, 3 /* 088120 80087520 01C47023 */ subu $t6, $t6, $a0 /* 088124 80087524 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 088128 80087528 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08812C 8008752C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088130 80087530 000E7140 */ sll $t6, $t6, 5 /* 088134 80087534 AFBF0014 */ sw $ra, 0x14($sp) /* 088138 80087538 01CF1021 */ addu $v0, $t6, $t7 /* 08813C 8008753C 944400C0 */ lhu $a0, 0xc0($v0) /* 088140 80087540 0C0AE006 */ jal func_802B8018 /* 088144 80087544 AFA2001C */ sw $v0, 0x1c($sp) /* 088148 80087548 8FA2001C */ lw $v0, 0x1c($sp) /* 08814C 8008754C C4440034 */ lwc1 $f4, 0x34($v0) /* 088150 80087550 944400C0 */ lhu $a0, 0xc0($v0) /* 088154 80087554 46040182 */ mul.s $f6, $f0, $f4 /* 088158 80087558 0C0AE00E */ jal func_802B8038 /* 08815C 8008755C E4460038 */ swc1 $f6, 0x38($v0) /* 088160 80087560 8FA2001C */ lw $v0, 0x1c($sp) /* 088164 80087564 8FBF0014 */ lw $ra, 0x14($sp) /* 088168 80087568 C4480034 */ lwc1 $f8, 0x34($v0) /* 08816C 8008756C 27BD0020 */ addiu $sp, $sp, 0x20 /* 088170 80087570 46080282 */ mul.s $f10, $f0, $f8 /* 088174 80087574 03E00008 */ jr $ra /* 088178 80087578 E44A0040 */ swc1 $f10, 0x40($v0) glabel func_8008757C /* 08817C 8008757C 000470C0 */ sll $t6, $a0, 3 /* 088180 80087580 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 088184 80087584 01C47023 */ subu $t6, $t6, $a0 /* 088188 80087588 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08818C 8008758C AFB00018 */ sw $s0, 0x18($sp) /* 088190 80087590 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088194 80087594 000E7140 */ sll $t6, $t6, 5 /* 088198 80087598 AFBF001C */ sw $ra, 0x1c($sp) /* 08819C 8008759C 01CF8021 */ addu $s0, $t6, $t7 /* 0881A0 800875A0 0C0AE00E */ jal func_802B8038 /* 0881A4 800875A4 960400BE */ lhu $a0, 0xbe($s0) /* 0881A8 800875A8 E7A00024 */ swc1 $f0, 0x24($sp) /* 0881AC 800875AC 0C0AE006 */ jal func_802B8018 /* 0881B0 800875B0 960400C0 */ lhu $a0, 0xc0($s0) /* 0881B4 800875B4 C6040034 */ lwc1 $f4, 0x34($s0) /* 0881B8 800875B8 C7A60024 */ lwc1 $f6, 0x24($sp) /* 0881BC 800875BC 960400BE */ lhu $a0, 0xbe($s0) /* 0881C0 800875C0 46062202 */ mul.s $f8, $f4, $f6 /* 0881C4 800875C4 00000000 */ nop /* 0881C8 800875C8 46080282 */ mul.s $f10, $f0, $f8 /* 0881CC 800875CC 0C0AE006 */ jal func_802B8018 /* 0881D0 800875D0 E60A0038 */ swc1 $f10, 0x38($s0) /* 0881D4 800875D4 C6100034 */ lwc1 $f16, 0x34($s0) /* 0881D8 800875D8 960400BE */ lhu $a0, 0xbe($s0) /* 0881DC 800875DC 46008487 */ neg.s $f18, $f16 /* 0881E0 800875E0 46120102 */ mul.s $f4, $f0, $f18 /* 0881E4 800875E4 0C0AE00E */ jal func_802B8038 /* 0881E8 800875E8 E604003C */ swc1 $f4, 0x3c($s0) /* 0881EC 800875EC E7A00024 */ swc1 $f0, 0x24($sp) /* 0881F0 800875F0 0C0AE00E */ jal func_802B8038 /* 0881F4 800875F4 960400C0 */ lhu $a0, 0xc0($s0) /* 0881F8 800875F8 C6060034 */ lwc1 $f6, 0x34($s0) /* 0881FC 800875FC C7A80024 */ lwc1 $f8, 0x24($sp) /* 088200 80087600 8FBF001C */ lw $ra, 0x1c($sp) /* 088204 80087604 46083282 */ mul.s $f10, $f6, $f8 /* 088208 80087608 00000000 */ nop /* 08820C 8008760C 460A0402 */ mul.s $f16, $f0, $f10 /* 088210 80087610 E6100040 */ swc1 $f16, 0x40($s0) /* 088214 80087614 8FB00018 */ lw $s0, 0x18($sp) /* 088218 80087618 03E00008 */ jr $ra /* 08821C 8008761C 27BD0028 */ addiu $sp, $sp, 0x28 glabel func_80087620 /* 088220 80087620 000470C0 */ sll $t6, $a0, 3 /* 088224 80087624 01C47023 */ subu $t6, $t6, $a0 /* 088228 80087628 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08822C 8008762C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088230 80087630 000E7140 */ sll $t6, $t6, 5 /* 088234 80087634 01CF1021 */ addu $v0, $t6, $t7 /* 088238 80087638 944400C0 */ lhu $a0, 0xc0($v0) /* 08823C 8008763C 34018000 */ li $at, 32768 /* 088240 80087640 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 088244 80087644 00812021 */ addu $a0, $a0, $at /* 088248 80087648 AFBF0014 */ sw $ra, 0x14($sp) /* 08824C 8008764C 3098FFFF */ andi $t8, $a0, 0xffff /* 088250 80087650 03002025 */ move $a0, $t8 /* 088254 80087654 0C0AE006 */ jal func_802B8018 /* 088258 80087658 AFA2001C */ sw $v0, 0x1c($sp) /* 08825C 8008765C 8FA2001C */ lw $v0, 0x1c($sp) /* 088260 80087660 34018000 */ li $at, 32768 /* 088264 80087664 C4440034 */ lwc1 $f4, 0x34($v0) /* 088268 80087668 944400C0 */ lhu $a0, 0xc0($v0) /* 08826C 8008766C 46040182 */ mul.s $f6, $f0, $f4 /* 088270 80087670 00812021 */ addu $a0, $a0, $at /* 088274 80087674 3099FFFF */ andi $t9, $a0, 0xffff /* 088278 80087678 03202025 */ move $a0, $t9 /* 08827C 8008767C 0C0AE00E */ jal func_802B8038 /* 088280 80087680 E4460038 */ swc1 $f6, 0x38($v0) /* 088284 80087684 8FA2001C */ lw $v0, 0x1c($sp) /* 088288 80087688 8FBF0014 */ lw $ra, 0x14($sp) /* 08828C 8008768C C4480034 */ lwc1 $f8, 0x34($v0) /* 088290 80087690 27BD0020 */ addiu $sp, $sp, 0x20 /* 088294 80087694 46080282 */ mul.s $f10, $f0, $f8 /* 088298 80087698 03E00008 */ jr $ra /* 08829C 8008769C E44A0040 */ swc1 $f10, 0x40($v0) glabel func_800876A0 /* 0882A0 800876A0 000470C0 */ sll $t6, $a0, 3 /* 0882A4 800876A4 01C47023 */ subu $t6, $t6, $a0 /* 0882A8 800876A8 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 0882AC 800876AC 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 0882B0 800876B0 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 0882B4 800876B4 000E7140 */ sll $t6, $t6, 5 /* 0882B8 800876B8 AFBF0014 */ sw $ra, 0x14($sp) /* 0882BC 800876BC 01CF1021 */ addu $v0, $t6, $t7 /* 0882C0 800876C0 944400C0 */ lhu $a0, 0xc0($v0) /* 0882C4 800876C4 0C0AE006 */ jal func_802B8018 /* 0882C8 800876C8 AFA20018 */ sw $v0, 0x18($sp) /* 0882CC 800876CC 8FA20018 */ lw $v0, 0x18($sp) /* 0882D0 800876D0 C4460034 */ lwc1 $f6, 0x34($v0) /* 0882D4 800876D4 C4440028 */ lwc1 $f4, 0x28($v0) /* 0882D8 800876D8 944400C0 */ lhu $a0, 0xc0($v0) /* 0882DC 800876DC 46003202 */ mul.s $f8, $f6, $f0 /* 0882E0 800876E0 46082280 */ add.s $f10, $f4, $f8 /* 0882E4 800876E4 0C0AE00E */ jal func_802B8038 /* 0882E8 800876E8 E44A0028 */ swc1 $f10, 0x28($v0) /* 0882EC 800876EC 8FA20018 */ lw $v0, 0x18($sp) /* 0882F0 800876F0 8FBF0014 */ lw $ra, 0x14($sp) /* 0882F4 800876F4 C4520034 */ lwc1 $f18, 0x34($v0) /* 0882F8 800876F8 C4500030 */ lwc1 $f16, 0x30($v0) /* 0882FC 800876FC 27BD0020 */ addiu $sp, $sp, 0x20 /* 088300 80087700 46009182 */ mul.s $f6, $f18, $f0 /* 088304 80087704 46068100 */ add.s $f4, $f16, $f6 /* 088308 80087708 03E00008 */ jr $ra /* 08830C 8008770C E4440030 */ swc1 $f4, 0x30($v0) glabel func_80087710 /* 088310 80087710 000470C0 */ sll $t6, $a0, 3 /* 088314 80087714 01C47023 */ subu $t6, $t6, $a0 /* 088318 80087718 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08831C 8008771C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088320 80087720 000E7140 */ sll $t6, $t6, 5 /* 088324 80087724 01CF1021 */ addu $v0, $t6, $t7 /* 088328 80087728 C4440028 */ lwc1 $f4, 0x28($v0) /* 08832C 8008772C C4460038 */ lwc1 $f6, 0x38($v0) /* 088330 80087730 C44A002C */ lwc1 $f10, 0x2c($v0) /* 088334 80087734 C450003C */ lwc1 $f16, 0x3c($v0) /* 088338 80087738 46062200 */ add.s $f8, $f4, $f6 /* 08833C 8008773C C4460040 */ lwc1 $f6, 0x40($v0) /* 088340 80087740 C4440030 */ lwc1 $f4, 0x30($v0) /* 088344 80087744 46105480 */ add.s $f18, $f10, $f16 /* 088348 80087748 E4480028 */ swc1 $f8, 0x28($v0) /* 08834C 8008774C 46062200 */ add.s $f8, $f4, $f6 /* 088350 80087750 E452002C */ swc1 $f18, 0x2c($v0) /* 088354 80087754 03E00008 */ jr $ra /* 088358 80087758 E4480030 */ swc1 $f8, 0x30($v0) glabel func_8008775C /* 08835C 8008775C 000470C0 */ sll $t6, $a0, 3 /* 088360 80087760 01C47023 */ subu $t6, $t6, $a0 /* 088364 80087764 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 088368 80087768 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08836C 8008776C 000E7140 */ sll $t6, $t6, 5 /* 088370 80087770 01CF1021 */ addu $v0, $t6, $t7 /* 088374 80087774 C4440028 */ lwc1 $f4, 0x28($v0) /* 088378 80087778 C4460038 */ lwc1 $f6, 0x38($v0) /* 08837C 8008777C C44A0030 */ lwc1 $f10, 0x30($v0) /* 088380 80087780 C4500040 */ lwc1 $f16, 0x40($v0) /* 088384 80087784 46062200 */ add.s $f8, $f4, $f6 /* 088388 80087788 46105480 */ add.s $f18, $f10, $f16 /* 08838C 8008778C E4480028 */ swc1 $f8, 0x28($v0) /* 088390 80087790 03E00008 */ jr $ra /* 088394 80087794 E4520030 */ swc1 $f18, 0x30($v0) /* 088398 80087798 000470C0 */ sll $t6, $a0, 3 /* 08839C 8008779C 01C47023 */ subu $t6, $t6, $a0 /* 0883A0 800877A0 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 0883A4 800877A4 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 0883A8 800877A8 000E7140 */ sll $t6, $t6, 5 /* 0883AC 800877AC 01CF1021 */ addu $v0, $t6, $t7 /* 0883B0 800877B0 C4440028 */ lwc1 $f4, 0x28($v0) /* 0883B4 800877B4 C4460038 */ lwc1 $f6, 0x38($v0) /* 0883B8 800877B8 46062200 */ add.s $f8, $f4, $f6 /* 0883BC 800877BC 03E00008 */ jr $ra /* 0883C0 800877C0 E4480028 */ swc1 $f8, 0x28($v0) glabel func_800877C4 /* 0883C4 800877C4 000470C0 */ sll $t6, $a0, 3 /* 0883C8 800877C8 01C47023 */ subu $t6, $t6, $a0 /* 0883CC 800877CC 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 0883D0 800877D0 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 0883D4 800877D4 000E7140 */ sll $t6, $t6, 5 /* 0883D8 800877D8 01CF1021 */ addu $v0, $t6, $t7 /* 0883DC 800877DC C444002C */ lwc1 $f4, 0x2c($v0) /* 0883E0 800877E0 C446003C */ lwc1 $f6, 0x3c($v0) /* 0883E4 800877E4 46062200 */ add.s $f8, $f4, $f6 /* 0883E8 800877E8 03E00008 */ jr $ra /* 0883EC 800877EC E448002C */ swc1 $f8, 0x2c($v0) /* 0883F0 800877F0 000470C0 */ sll $t6, $a0, 3 /* 0883F4 800877F4 01C47023 */ subu $t6, $t6, $a0 /* 0883F8 800877F8 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 0883FC 800877FC 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088400 80087800 000E7140 */ sll $t6, $t6, 5 /* 088404 80087804 01CF1021 */ addu $v0, $t6, $t7 /* 088408 80087808 C4440030 */ lwc1 $f4, 0x30($v0) /* 08840C 8008780C C4460040 */ lwc1 $f6, 0x40($v0) /* 088410 80087810 46062200 */ add.s $f8, $f4, $f6 /* 088414 80087814 03E00008 */ jr $ra /* 088418 80087818 E4480030 */ swc1 $f8, 0x30($v0) glabel func_8008781C /* 08841C 8008781C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 088420 80087820 AFBF0014 */ sw $ra, 0x14($sp) /* 088424 80087824 0C021D47 */ jal func_8008751C /* 088428 80087828 AFA40018 */ sw $a0, 0x18($sp) /* 08842C 8008782C 0C021DD7 */ jal func_8008775C /* 088430 80087830 8FA40018 */ lw $a0, 0x18($sp) /* 088434 80087834 8FBF0014 */ lw $ra, 0x14($sp) /* 088438 80087838 27BD0018 */ addiu $sp, $sp, 0x18 /* 08843C 8008783C 03E00008 */ jr $ra /* 088440 80087840 00000000 */ nop glabel func_80087844 /* 088444 80087844 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 088448 80087848 AFBF0014 */ sw $ra, 0x14($sp) /* 08844C 8008784C 0C021D5F */ jal func_8008757C /* 088450 80087850 AFA40018 */ sw $a0, 0x18($sp) /* 088454 80087854 0C021DC4 */ jal func_80087710 /* 088458 80087858 8FA40018 */ lw $a0, 0x18($sp) /* 08845C 8008785C 8FBF0014 */ lw $ra, 0x14($sp) /* 088460 80087860 27BD0018 */ addiu $sp, $sp, 0x18 /* 088464 80087864 03E00008 */ jr $ra /* 088468 80087868 00000000 */ nop /* 08846C 8008786C AFA60008 */ sw $a2, 8($sp) /* 088470 80087870 AFA7000C */ sw $a3, 0xc($sp) /* 088474 80087874 C7AA000C */ lwc1 $f10, 0xc($sp) /* 088478 80087878 C7A60008 */ lwc1 $f6, 8($sp) /* 08847C 8008787C C7A40010 */ lwc1 $f4, 0x10($sp) /* 088480 80087880 460E5401 */ sub.s $f16, $f10, $f14 /* 088484 80087884 46062201 */ sub.s $f8, $f4, $f6 /* 088488 80087888 460E6101 */ sub.s $f4, $f12, $f14 /* 08848C 8008788C 46104483 */ div.s $f18, $f8, $f16 /* 088490 80087890 46049282 */ mul.s $f10, $f18, $f4 /* 088494 80087894 03E00008 */ jr $ra /* 088498 80087898 46065000 */ add.s $f0, $f10, $f6 glabel func_8008789C /* 08849C 8008789C 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0884A0 800878A0 AFBF001C */ sw $ra, 0x1c($sp) /* 0884A4 800878A4 AFB00018 */ sw $s0, 0x18($sp) /* 0884A8 800878A8 AFA5002C */ sw $a1, 0x2c($sp) /* 0884AC 800878AC 00808025 */ move $s0, $a0 /* 0884B0 800878B0 AFA00024 */ sw $zero, 0x24($sp) /* 0884B4 800878B4 0C01C89C */ jal func_80072270 /* 0884B8 800878B8 24050008 */ li $a1, 8 /* 0884BC 800878BC 1040000C */ beqz $v0, .L800878F0 /* 0884C0 800878C0 02002025 */ move $a0, $s0 /* 0884C4 800878C4 0C01C870 */ jal func_800721C0 /* 0884C8 800878C8 24050008 */ li $a1, 8 /* 0884CC 800878CC 0C021D47 */ jal func_8008751C /* 0884D0 800878D0 02002025 */ move $a0, $s0 /* 0884D4 800878D4 001078C0 */ sll $t7, $s0, 3 /* 0884D8 800878D8 8FAE002C */ lw $t6, 0x2c($sp) /* 0884DC 800878DC 01F07823 */ subu $t7, $t7, $s0 /* 0884E0 800878E0 000F7940 */ sll $t7, $t7, 5 /* 0884E4 800878E4 3C018016 */ lui $at, %hi(D_80165CC8) # 0x8016 /* 0884E8 800878E8 002F0821 */ addu $at, $at, $t7 /* 0884EC 800878EC A42E5CC8 */ sh $t6, %lo(D_80165CC8)($at) # 0x5cc8($at) .L800878F0: /* 0884F0 800878F0 0010C0C0 */ sll $t8, $s0, 3 /* 0884F4 800878F4 0310C023 */ subu $t8, $t8, $s0 /* 0884F8 800878F8 3C198016 */ lui $t9, %hi(D_80165C18) # $t9, 0x8016 /* 0884FC 800878FC 27395C18 */ addiu $t9, %lo(D_80165C18) # addiu $t9, $t9, 0x5c18 /* 088500 80087900 0018C140 */ sll $t8, $t8, 5 /* 088504 80087904 03191021 */ addu $v0, $t8, $t9 /* 088508 80087908 844800B0 */ lh $t0, 0xb0($v0) /* 08850C 8008790C 02002025 */ move $a0, $s0 /* 088510 80087910 2509FFFF */ addiu $t1, $t0, -1 /* 088514 80087914 A44900B0 */ sh $t1, 0xb0($v0) /* 088518 80087918 844A00B0 */ lh $t2, 0xb0($v0) /* 08851C 8008791C 05410006 */ bgez $t2, .L80087938 /* 088520 80087920 00000000 */ nop /* 088524 80087924 0C01C87A */ jal func_800721E8 /* 088528 80087928 24050008 */ li $a1, 8 /* 08852C 8008792C 240B0001 */ li $t3, 1 /* 088530 80087930 10000003 */ b .L80087940 /* 088534 80087934 AFAB0024 */ sw $t3, 0x24($sp) .L80087938: /* 088538 80087938 0C021DD7 */ jal func_8008775C /* 08853C 8008793C 02002025 */ move $a0, $s0 .L80087940: /* 088540 80087940 8FBF001C */ lw $ra, 0x1c($sp) /* 088544 80087944 8FA20024 */ lw $v0, 0x24($sp) /* 088548 80087948 8FB00018 */ lw $s0, 0x18($sp) /* 08854C 8008794C 03E00008 */ jr $ra /* 088550 80087950 27BD0028 */ addiu $sp, $sp, 0x28 glabel func_80087954 /* 088554 80087954 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 088558 80087958 AFBF001C */ sw $ra, 0x1c($sp) /* 08855C 8008795C AFB00018 */ sw $s0, 0x18($sp) /* 088560 80087960 AFA5002C */ sw $a1, 0x2c($sp) /* 088564 80087964 00808025 */ move $s0, $a0 /* 088568 80087968 AFA00024 */ sw $zero, 0x24($sp) /* 08856C 8008796C 0C01C89C */ jal func_80072270 /* 088570 80087970 24050008 */ li $a1, 8 /* 088574 80087974 1040000C */ beqz $v0, .L800879A8 /* 088578 80087978 02002025 */ move $a0, $s0 /* 08857C 8008797C 0C01C870 */ jal func_800721C0 /* 088580 80087980 24050008 */ li $a1, 8 /* 088584 80087984 0C021D88 */ jal func_80087620 /* 088588 80087988 02002025 */ move $a0, $s0 /* 08858C 8008798C 001078C0 */ sll $t7, $s0, 3 /* 088590 80087990 8FAE002C */ lw $t6, 0x2c($sp) /* 088594 80087994 01F07823 */ subu $t7, $t7, $s0 /* 088598 80087998 000F7940 */ sll $t7, $t7, 5 /* 08859C 8008799C 3C018016 */ lui $at, %hi(D_80165CC8) # 0x8016 /* 0885A0 800879A0 002F0821 */ addu $at, $at, $t7 /* 0885A4 800879A4 A42E5CC8 */ sh $t6, %lo(D_80165CC8)($at) # 0x5cc8($at) .L800879A8: /* 0885A8 800879A8 0010C0C0 */ sll $t8, $s0, 3 /* 0885AC 800879AC 0310C023 */ subu $t8, $t8, $s0 /* 0885B0 800879B0 3C198016 */ lui $t9, %hi(D_80165C18) # $t9, 0x8016 /* 0885B4 800879B4 27395C18 */ addiu $t9, %lo(D_80165C18) # addiu $t9, $t9, 0x5c18 /* 0885B8 800879B8 0018C140 */ sll $t8, $t8, 5 /* 0885BC 800879BC 03191021 */ addu $v0, $t8, $t9 /* 0885C0 800879C0 844800B0 */ lh $t0, 0xb0($v0) /* 0885C4 800879C4 02002025 */ move $a0, $s0 /* 0885C8 800879C8 2509FFFF */ addiu $t1, $t0, -1 /* 0885CC 800879CC A44900B0 */ sh $t1, 0xb0($v0) /* 0885D0 800879D0 844A00B0 */ lh $t2, 0xb0($v0) /* 0885D4 800879D4 05410006 */ bgez $t2, .L800879F0 /* 0885D8 800879D8 00000000 */ nop /* 0885DC 800879DC 0C01C87A */ jal func_800721E8 /* 0885E0 800879E0 24050008 */ li $a1, 8 /* 0885E4 800879E4 240B0001 */ li $t3, 1 /* 0885E8 800879E8 10000003 */ b .L800879F8 /* 0885EC 800879EC AFAB0024 */ sw $t3, 0x24($sp) .L800879F0: /* 0885F0 800879F0 0C021DD7 */ jal func_8008775C /* 0885F4 800879F4 02002025 */ move $a0, $s0 .L800879F8: /* 0885F8 800879F8 8FBF001C */ lw $ra, 0x1c($sp) /* 0885FC 800879FC 8FA20024 */ lw $v0, 0x24($sp) /* 088600 80087A00 8FB00018 */ lw $s0, 0x18($sp) /* 088604 80087A04 03E00008 */ jr $ra /* 088608 80087A08 27BD0028 */ addiu $sp, $sp, 0x28 glabel func_80087A0C /* 08860C 80087A0C 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 088610 80087A10 AFBF001C */ sw $ra, 0x1c($sp) /* 088614 80087A14 AFB00018 */ sw $s0, 0x18($sp) /* 088618 80087A18 AFA5003C */ sw $a1, 0x3c($sp) /* 08861C 80087A1C 00808025 */ move $s0, $a0 /* 088620 80087A20 AFA60040 */ sw $a2, 0x40($sp) /* 088624 80087A24 AFA70044 */ sw $a3, 0x44($sp) /* 088628 80087A28 AFA0002C */ sw $zero, 0x2c($sp) /* 08862C 80087A2C 0C01C89C */ jal func_80072270 /* 088630 80087A30 24050008 */ li $a1, 8 /* 088634 80087A34 1040003A */ beqz $v0, .L80087B20 /* 088638 80087A38 02002025 */ move $a0, $s0 /* 08863C 80087A3C 0C01C870 */ jal func_800721C0 /* 088640 80087A40 24050008 */ li $a1, 8 /* 088644 80087A44 87AE0042 */ lh $t6, 0x42($sp) /* 088648 80087A48 87AF003E */ lh $t7, 0x3e($sp) /* 08864C 80087A4C 87A8004A */ lh $t0, 0x4a($sp) /* 088650 80087A50 87A90046 */ lh $t1, 0x46($sp) /* 088654 80087A54 01CF1023 */ subu $v0, $t6, $t7 /* 088658 80087A58 0002C400 */ sll $t8, $v0, 0x10 /* 08865C 80087A5C 00181403 */ sra $v0, $t8, 0x10 /* 088660 80087A60 00420019 */ multu $v0, $v0 /* 088664 80087A64 01092023 */ subu $a0, $t0, $t1 /* 088668 80087A68 00045400 */ sll $t2, $a0, 0x10 /* 08866C 80087A6C 000A2403 */ sra $a0, $t2, 0x10 /* 088670 80087A70 AFA40024 */ sw $a0, 0x24($sp) /* 088674 80087A74 AFA20028 */ sw $v0, 0x28($sp) /* 088678 80087A78 00006012 */ mflo $t4 /* 08867C 80087A7C 00000000 */ nop /* 088680 80087A80 00000000 */ nop /* 088684 80087A84 00840019 */ multu $a0, $a0 /* 088688 80087A88 00006812 */ mflo $t5 /* 08868C 80087A8C 018D7021 */ addu $t6, $t4, $t5 /* 088690 80087A90 448E2000 */ mtc1 $t6, $f4 /* 088694 80087A94 0C033850 */ jal sqrtf /* 088698 80087A98 46802320 */ cvt.s.w $f12, $f4 /* 08869C 80087A9C 4600048D */ trunc.w.s $f18, $f0 /* 0886A0 80087AA0 8FA20028 */ lw $v0, 0x28($sp) /* 0886A4 80087AA4 8FA40024 */ lw $a0, 0x24($sp) /* 0886A8 80087AA8 44808000 */ mtc1 $zero, $f16 /* 0886AC 80087AAC 44189000 */ mfc1 $t8, $f18 /* 0886B0 80087AB0 44829000 */ mtc1 $v0, $f18 /* 0886B4 80087AB4 44845000 */ mtc1 $a0, $f10 /* 0886B8 80087AB8 0010C8C0 */ sll $t9, $s0, 3 /* 0886BC 80087ABC 46809320 */ cvt.s.w $f12, $f18 /* 0886C0 80087AC0 0330C823 */ subu $t9, $t9, $s0 /* 0886C4 80087AC4 3C088016 */ lui $t0, %hi(D_80165C18) # $t0, 0x8016 /* 0886C8 80087AC8 0019C940 */ sll $t9, $t9, 5 /* 0886CC 80087ACC 25085C18 */ addiu $t0, %lo(D_80165C18) # addiu $t0, $t0, 0x5c18 /* 0886D0 80087AD0 468053A0 */ cvt.s.w $f14, $f10 /* 0886D4 80087AD4 03281821 */ addu $v1, $t9, $t0 /* 0886D8 80087AD8 A7B80036 */ sh $t8, 0x36($sp) /* 0886DC 80087ADC E4700014 */ swc1 $f16, 0x14($v1) /* 0886E0 80087AE0 0C0ADE0C */ jal func_802B7830 /* 0886E4 80087AE4 AFA30020 */ sw $v1, 0x20($sp) /* 0886E8 80087AE8 8FA30020 */ lw $v1, 0x20($sp) /* 0886EC 80087AEC 02002025 */ move $a0, $s0 /* 0886F0 80087AF0 0C021D47 */ jal func_8008751C /* 0886F4 80087AF4 A46200C0 */ sh $v0, 0xc0($v1) /* 0886F8 80087AF8 87A90036 */ lh $t1, 0x36($sp) /* 0886FC 80087AFC 8FA30020 */ lw $v1, 0x20($sp) /* 088700 80087B00 44899000 */ mtc1 $t1, $f18 /* 088704 80087B04 C4660034 */ lwc1 $f6, 0x34($v1) /* 088708 80087B08 46809120 */ cvt.s.w $f4, $f18 /* 08870C 80087B0C 46062203 */ div.s $f8, $f4, $f6 /* 088710 80087B10 4600428D */ trunc.w.s $f10, $f8 /* 088714 80087B14 440B5000 */ mfc1 $t3, $f10 /* 088718 80087B18 00000000 */ nop /* 08871C 80087B1C A46B00B0 */ sh $t3, 0xb0($v1) .L80087B20: /* 088720 80087B20 001060C0 */ sll $t4, $s0, 3 /* 088724 80087B24 01906023 */ subu $t4, $t4, $s0 /* 088728 80087B28 3C0D8016 */ lui $t5, %hi(D_80165C18) # $t5, 0x8016 /* 08872C 80087B2C 25AD5C18 */ addiu $t5, %lo(D_80165C18) # addiu $t5, $t5, 0x5c18 /* 088730 80087B30 000C6140 */ sll $t4, $t4, 5 /* 088734 80087B34 018D1821 */ addu $v1, $t4, $t5 /* 088738 80087B38 846E00B0 */ lh $t6, 0xb0($v1) /* 08873C 80087B3C 02002025 */ move $a0, $s0 /* 088740 80087B40 25CFFFFF */ addiu $t7, $t6, -1 /* 088744 80087B44 A46F00B0 */ sh $t7, 0xb0($v1) /* 088748 80087B48 847800B0 */ lh $t8, 0xb0($v1) /* 08874C 80087B4C 07010006 */ bgez $t8, .L80087B68 /* 088750 80087B50 00000000 */ nop /* 088754 80087B54 0C01C87A */ jal func_800721E8 /* 088758 80087B58 24050008 */ li $a1, 8 /* 08875C 80087B5C 24190001 */ li $t9, 1 /* 088760 80087B60 10000003 */ b .L80087B70 /* 088764 80087B64 AFB9002C */ sw $t9, 0x2c($sp) .L80087B68: /* 088768 80087B68 0C021DD7 */ jal func_8008775C /* 08876C 80087B6C 02002025 */ move $a0, $s0 .L80087B70: /* 088770 80087B70 8FBF001C */ lw $ra, 0x1c($sp) /* 088774 80087B74 8FA2002C */ lw $v0, 0x2c($sp) /* 088778 80087B78 8FB00018 */ lw $s0, 0x18($sp) /* 08877C 80087B7C 03E00008 */ jr $ra /* 088780 80087B80 27BD0038 */ addiu $sp, $sp, 0x38 glabel func_80087B84 /* 088784 80087B84 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 088788 80087B88 AFBF001C */ sw $ra, 0x1c($sp) /* 08878C 80087B8C AFB00018 */ sw $s0, 0x18($sp) /* 088790 80087B90 AFA5002C */ sw $a1, 0x2c($sp) /* 088794 80087B94 00808025 */ move $s0, $a0 /* 088798 80087B98 AFA60030 */ sw $a2, 0x30($sp) /* 08879C 80087B9C AFA00024 */ sw $zero, 0x24($sp) /* 0887A0 80087BA0 0C01C89C */ jal func_80072270 /* 0887A4 80087BA4 24050008 */ li $a1, 8 /* 0887A8 80087BA8 1040000B */ beqz $v0, .L80087BD8 /* 0887AC 80087BAC 02002025 */ move $a0, $s0 /* 0887B0 80087BB0 0C01C870 */ jal func_800721C0 /* 0887B4 80087BB4 24050008 */ li $a1, 8 /* 0887B8 80087BB8 C7A4002C */ lwc1 $f4, 0x2c($sp) /* 0887BC 80087BBC 001070C0 */ sll $t6, $s0, 3 /* 0887C0 80087BC0 01D07023 */ subu $t6, $t6, $s0 /* 0887C4 80087BC4 46002187 */ neg.s $f6, $f4 /* 0887C8 80087BC8 000E7140 */ sll $t6, $t6, 5 /* 0887CC 80087BCC 3C018016 */ lui $at, %hi(D_80165C54) /* 0887D0 80087BD0 002E0821 */ addu $at, $at, $t6 /* 0887D4 80087BD4 E4265C54 */ swc1 $f6, %lo(D_80165C54)($at) .L80087BD8: /* 0887D8 80087BD8 001078C0 */ sll $t7, $s0, 3 /* 0887DC 80087BDC 01F07823 */ subu $t7, $t7, $s0 /* 0887E0 80087BE0 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 0887E4 80087BE4 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 0887E8 80087BE8 000F7940 */ sll $t7, $t7, 5 /* 0887EC 80087BEC 01F8C821 */ addu $t9, $t7, $t8 /* 0887F0 80087BF0 AFB90020 */ sw $t9, 0x20($sp) /* 0887F4 80087BF4 0C021DF1 */ jal func_800877C4 /* 0887F8 80087BF8 02002025 */ move $a0, $s0 /* 0887FC 80087BFC 8FA80020 */ lw $t0, 0x20($sp) /* 088800 80087C00 C7A80030 */ lwc1 $f8, 0x30($sp) /* 088804 80087C04 02002025 */ move $a0, $s0 /* 088808 80087C08 C50A0008 */ lwc1 $f10, 8($t0) /* 08880C 80087C0C 4608503E */ c.le.s $f10, $f8 /* 088810 80087C10 00000000 */ nop /* 088814 80087C14 45020008 */ bc1fl .L80087C38 /* 088818 80087C18 8FBF001C */ lw $ra, 0x1c($sp) /* 08881C 80087C1C 0C01C87A */ jal func_800721E8 /* 088820 80087C20 24050008 */ li $a1, 8 /* 088824 80087C24 0C021BF5 */ jal func_80086FD4 /* 088828 80087C28 02002025 */ move $a0, $s0 /* 08882C 80087C2C 24090001 */ li $t1, 1 /* 088830 80087C30 AFA90024 */ sw $t1, 0x24($sp) /* 088834 80087C34 8FBF001C */ lw $ra, 0x1c($sp) .L80087C38: /* 088838 80087C38 8FA20024 */ lw $v0, 0x24($sp) /* 08883C 80087C3C 8FB00018 */ lw $s0, 0x18($sp) /* 088840 80087C40 03E00008 */ jr $ra /* 088844 80087C44 27BD0028 */ addiu $sp, $sp, 0x28 glabel func_80087C48 /* 088848 80087C48 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 08884C 80087C4C AFBF001C */ sw $ra, 0x1c($sp) /* 088850 80087C50 AFB00018 */ sw $s0, 0x18($sp) /* 088854 80087C54 AFA5002C */ sw $a1, 0x2c($sp) /* 088858 80087C58 00808025 */ move $s0, $a0 /* 08885C 80087C5C AFA60030 */ sw $a2, 0x30($sp) /* 088860 80087C60 AFA70034 */ sw $a3, 0x34($sp) /* 088864 80087C64 AFA00024 */ sw $zero, 0x24($sp) /* 088868 80087C68 0C01C89C */ jal func_80072270 /* 08886C 80087C6C 24050008 */ li $a1, 8 /* 088870 80087C70 1040000D */ beqz $v0, .L80087CA8 /* 088874 80087C74 02002025 */ move $a0, $s0 /* 088878 80087C78 0C01C870 */ jal func_800721C0 /* 08887C 80087C7C 24050008 */ li $a1, 8 /* 088880 80087C80 001070C0 */ sll $t6, $s0, 3 /* 088884 80087C84 01D07023 */ subu $t6, $t6, $s0 /* 088888 80087C88 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08888C 80087C8C C7A4002C */ lwc1 $f4, 0x2c($sp) /* 088890 80087C90 8FB80034 */ lw $t8, 0x34($sp) /* 088894 80087C94 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088898 80087C98 000E7140 */ sll $t6, $t6, 5 /* 08889C 80087C9C 01CF1021 */ addu $v0, $t6, $t7 /* 0888A0 80087CA0 E444003C */ swc1 $f4, 0x3c($v0) /* 0888A4 80087CA4 A45800B0 */ sh $t8, 0xb0($v0) .L80087CA8: /* 0888A8 80087CA8 0010C8C0 */ sll $t9, $s0, 3 /* 0888AC 80087CAC 0330C823 */ subu $t9, $t9, $s0 /* 0888B0 80087CB0 3C088016 */ lui $t0, %hi(D_80165C18) # $t0, 0x8016 /* 0888B4 80087CB4 25085C18 */ addiu $t0, %lo(D_80165C18) # addiu $t0, $t0, 0x5c18 /* 0888B8 80087CB8 0019C940 */ sll $t9, $t9, 5 /* 0888BC 80087CBC 03281021 */ addu $v0, $t9, $t0 /* 0888C0 80087CC0 844900B0 */ lh $t1, 0xb0($v0) /* 0888C4 80087CC4 02002025 */ move $a0, $s0 /* 0888C8 80087CC8 252AFFFF */ addiu $t2, $t1, -1 /* 0888CC 80087CCC A44A00B0 */ sh $t2, 0xb0($v0) /* 0888D0 80087CD0 844B00B0 */ lh $t3, 0xb0($v0) /* 0888D4 80087CD4 C7A80030 */ lwc1 $f8, 0x30($sp) /* 0888D8 80087CD8 05630009 */ bgezl $t3, .L80087D00 /* 0888DC 80087CDC C446003C */ lwc1 $f6, 0x3c($v0) /* 0888E0 80087CE0 0C01C87A */ jal func_800721E8 /* 0888E4 80087CE4 24050008 */ li $a1, 8 /* 0888E8 80087CE8 0C021BF5 */ jal func_80086FD4 /* 0888EC 80087CEC 02002025 */ move $a0, $s0 /* 0888F0 80087CF0 240C0001 */ li $t4, 1 /* 0888F4 80087CF4 10000006 */ b .L80087D10 /* 0888F8 80087CF8 AFAC0024 */ sw $t4, 0x24($sp) /* 0888FC 80087CFC C446003C */ lwc1 $f6, 0x3c($v0) .L80087D00: /* 088900 80087D00 02002025 */ move $a0, $s0 /* 088904 80087D04 46083281 */ sub.s $f10, $f6, $f8 /* 088908 80087D08 0C021DF1 */ jal func_800877C4 /* 08890C 80087D0C E44A003C */ swc1 $f10, 0x3c($v0) .L80087D10: /* 088910 80087D10 8FBF001C */ lw $ra, 0x1c($sp) /* 088914 80087D14 8FA20024 */ lw $v0, 0x24($sp) /* 088918 80087D18 8FB00018 */ lw $s0, 0x18($sp) /* 08891C 80087D1C 03E00008 */ jr $ra /* 088920 80087D20 27BD0028 */ addiu $sp, $sp, 0x28 glabel func_80087D24 /* 088924 80087D24 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 088928 80087D28 AFBF001C */ sw $ra, 0x1c($sp) /* 08892C 80087D2C AFB00018 */ sw $s0, 0x18($sp) /* 088930 80087D30 AFA5002C */ sw $a1, 0x2c($sp) /* 088934 80087D34 00808025 */ move $s0, $a0 /* 088938 80087D38 AFA60030 */ sw $a2, 0x30($sp) /* 08893C 80087D3C AFA70034 */ sw $a3, 0x34($sp) /* 088940 80087D40 AFA00024 */ sw $zero, 0x24($sp) /* 088944 80087D44 0C01C89C */ jal func_80072270 /* 088948 80087D48 24050008 */ li $a1, 8 /* 08894C 80087D4C 1040000A */ beqz $v0, .L80087D78 /* 088950 80087D50 02002025 */ move $a0, $s0 /* 088954 80087D54 0C01C870 */ jal func_800721C0 /* 088958 80087D58 24050008 */ li $a1, 8 /* 08895C 80087D5C 001070C0 */ sll $t6, $s0, 3 /* 088960 80087D60 C7A4002C */ lwc1 $f4, 0x2c($sp) /* 088964 80087D64 01D07023 */ subu $t6, $t6, $s0 /* 088968 80087D68 000E7140 */ sll $t6, $t6, 5 /* 08896C 80087D6C 3C018016 */ lui $at, %hi(D_80165C54) /* 088970 80087D70 002E0821 */ addu $at, $at, $t6 /* 088974 80087D74 E4245C54 */ swc1 $f4, %lo(D_80165C54)($at) .L80087D78: /* 088978 80087D78 001078C0 */ sll $t7, $s0, 3 /* 08897C 80087D7C 01F07823 */ subu $t7, $t7, $s0 /* 088980 80087D80 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 088984 80087D84 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 088988 80087D88 000F7940 */ sll $t7, $t7, 5 /* 08898C 80087D8C 01F81021 */ addu $v0, $t7, $t8 /* 088990 80087D90 C446003C */ lwc1 $f6, 0x3c($v0) /* 088994 80087D94 C7A80030 */ lwc1 $f8, 0x30($sp) /* 088998 80087D98 AFA20020 */ sw $v0, 0x20($sp) /* 08899C 80087D9C 02002025 */ move $a0, $s0 /* 0889A0 80087DA0 46083281 */ sub.s $f10, $f6, $f8 /* 0889A4 80087DA4 0C021DF1 */ jal func_800877C4 /* 0889A8 80087DA8 E44A003C */ swc1 $f10, 0x3c($v0) /* 0889AC 80087DAC 8FA20020 */ lw $v0, 0x20($sp) /* 0889B0 80087DB0 C7B00034 */ lwc1 $f16, 0x34($sp) /* 0889B4 80087DB4 02002025 */ move $a0, $s0 /* 0889B8 80087DB8 C452002C */ lwc1 $f18, 0x2c($v0) /* 0889BC 80087DBC 24050008 */ li $a1, 8 /* 0889C0 80087DC0 4610903E */ c.le.s $f18, $f16 /* 0889C4 80087DC4 00000000 */ nop /* 0889C8 80087DC8 4502000B */ bc1fl .L80087DF8 /* 0889CC 80087DCC 8FBF001C */ lw $ra, 0x1c($sp) /* 0889D0 80087DD0 0C01C87A */ jal func_800721E8 /* 0889D4 80087DD4 AFA20020 */ sw $v0, 0x20($sp) /* 0889D8 80087DD8 8FA20020 */ lw $v0, 0x20($sp) /* 0889DC 80087DDC C7A40034 */ lwc1 $f4, 0x34($sp) /* 0889E0 80087DE0 02002025 */ move $a0, $s0 /* 0889E4 80087DE4 0C021BF5 */ jal func_80086FD4 /* 0889E8 80087DE8 E444002C */ swc1 $f4, 0x2c($v0) /* 0889EC 80087DEC 24190001 */ li $t9, 1 /* 0889F0 80087DF0 AFB90024 */ sw $t9, 0x24($sp) /* 0889F4 80087DF4 8FBF001C */ lw $ra, 0x1c($sp) .L80087DF8: /* 0889F8 80087DF8 8FA20024 */ lw $v0, 0x24($sp) /* 0889FC 80087DFC 8FB00018 */ lw $s0, 0x18($sp) /* 088A00 80087E00 03E00008 */ jr $ra /* 088A04 80087E04 27BD0028 */ addiu $sp, $sp, 0x28 glabel func_80087E08 /* 088A08 80087E08 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 088A0C 80087E0C AFBF001C */ sw $ra, 0x1c($sp) /* 088A10 80087E10 AFB00018 */ sw $s0, 0x18($sp) /* 088A14 80087E14 AFA50034 */ sw $a1, 0x34($sp) /* 088A18 80087E18 00808025 */ move $s0, $a0 /* 088A1C 80087E1C AFA60038 */ sw $a2, 0x38($sp) /* 088A20 80087E20 AFA7003C */ sw $a3, 0x3c($sp) /* 088A24 80087E24 AFA0002C */ sw $zero, 0x2c($sp) /* 088A28 80087E28 0C01C89C */ jal func_80072270 /* 088A2C 80087E2C 24050008 */ li $a1, 8 /* 088A30 80087E30 10400019 */ beqz $v0, .L80087E98 /* 088A34 80087E34 02002025 */ move $a0, $s0 /* 088A38 80087E38 0C01C870 */ jal func_800721C0 /* 088A3C 80087E3C 24050008 */ li $a1, 8 /* 088A40 80087E40 001070C0 */ sll $t6, $s0, 3 /* 088A44 80087E44 01D07023 */ subu $t6, $t6, $s0 /* 088A48 80087E48 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 088A4C 80087E4C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088A50 80087E50 000E7140 */ sll $t6, $t6, 5 /* 088A54 80087E54 01CF1021 */ addu $v0, $t6, $t7 /* 088A58 80087E58 44800000 */ mtc1 $zero, $f0 /* 088A5C 80087E5C C7A4003C */ lwc1 $f4, 0x3c($sp) /* 088A60 80087E60 C7A60034 */ lwc1 $f6, 0x34($sp) /* 088A64 80087E64 87B80042 */ lh $t8, 0x42($sp) /* 088A68 80087E68 AFA20024 */ sw $v0, 0x24($sp) /* 088A6C 80087E6C 02002025 */ move $a0, $s0 /* 088A70 80087E70 E4400030 */ swc1 $f0, 0x30($v0) /* 088A74 80087E74 E440002C */ swc1 $f0, 0x2c($v0) /* 088A78 80087E78 E4400028 */ swc1 $f0, 0x28($v0) /* 088A7C 80087E7C E4440034 */ swc1 $f4, 0x34($v0) /* 088A80 80087E80 E446003C */ swc1 $f6, 0x3c($v0) /* 088A84 80087E84 0C021D47 */ jal func_8008751C /* 088A88 80087E88 A45800C0 */ sh $t8, 0xc0($v0) /* 088A8C 80087E8C 8FA20024 */ lw $v0, 0x24($sp) /* 088A90 80087E90 8FB90044 */ lw $t9, 0x44($sp) /* 088A94 80087E94 A45900B0 */ sh $t9, 0xb0($v0) .L80087E98: /* 088A98 80087E98 001040C0 */ sll $t0, $s0, 3 /* 088A9C 80087E9C 01104023 */ subu $t0, $t0, $s0 /* 088AA0 80087EA0 3C098016 */ lui $t1, %hi(D_80165C18) # $t1, 0x8016 /* 088AA4 80087EA4 25295C18 */ addiu $t1, %lo(D_80165C18) # addiu $t1, $t1, 0x5c18 /* 088AA8 80087EA8 00084140 */ sll $t0, $t0, 5 /* 088AAC 80087EAC 01091021 */ addu $v0, $t0, $t1 /* 088AB0 80087EB0 844A00B0 */ lh $t2, 0xb0($v0) /* 088AB4 80087EB4 02002025 */ move $a0, $s0 /* 088AB8 80087EB8 254BFFFF */ addiu $t3, $t2, -1 /* 088ABC 80087EBC A44B00B0 */ sh $t3, 0xb0($v0) /* 088AC0 80087EC0 844C00B0 */ lh $t4, 0xb0($v0) /* 088AC4 80087EC4 C7AA0038 */ lwc1 $f10, 0x38($sp) /* 088AC8 80087EC8 05830009 */ bgezl $t4, .L80087EF0 /* 088ACC 80087ECC C448003C */ lwc1 $f8, 0x3c($v0) /* 088AD0 80087ED0 0C01C87A */ jal func_800721E8 /* 088AD4 80087ED4 24050008 */ li $a1, 8 /* 088AD8 80087ED8 0C021BF5 */ jal func_80086FD4 /* 088ADC 80087EDC 02002025 */ move $a0, $s0 /* 088AE0 80087EE0 240D0001 */ li $t5, 1 /* 088AE4 80087EE4 10000006 */ b .L80087F00 /* 088AE8 80087EE8 AFAD002C */ sw $t5, 0x2c($sp) /* 088AEC 80087EEC C448003C */ lwc1 $f8, 0x3c($v0) .L80087EF0: /* 088AF0 80087EF0 02002025 */ move $a0, $s0 /* 088AF4 80087EF4 460A4401 */ sub.s $f16, $f8, $f10 /* 088AF8 80087EF8 0C021DC4 */ jal func_80087710 /* 088AFC 80087EFC E450003C */ swc1 $f16, 0x3c($v0) .L80087F00: /* 088B00 80087F00 8FBF001C */ lw $ra, 0x1c($sp) /* 088B04 80087F04 8FA2002C */ lw $v0, 0x2c($sp) /* 088B08 80087F08 8FB00018 */ lw $s0, 0x18($sp) /* 088B0C 80087F0C 03E00008 */ jr $ra /* 088B10 80087F10 27BD0030 */ addiu $sp, $sp, 0x30 /* 088B14 80087F14 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 088B18 80087F18 AFBF001C */ sw $ra, 0x1c($sp) /* 088B1C 80087F1C AFB00018 */ sw $s0, 0x18($sp) /* 088B20 80087F20 AFA50034 */ sw $a1, 0x34($sp) /* 088B24 80087F24 00808025 */ move $s0, $a0 /* 088B28 80087F28 AFA60038 */ sw $a2, 0x38($sp) /* 088B2C 80087F2C AFA7003C */ sw $a3, 0x3c($sp) /* 088B30 80087F30 AFA0002C */ sw $zero, 0x2c($sp) /* 088B34 80087F34 0C01C89C */ jal func_80072270 /* 088B38 80087F38 24050008 */ li $a1, 8 /* 088B3C 80087F3C 1040001D */ beqz $v0, .L80087FB4 /* 088B40 80087F40 02002025 */ move $a0, $s0 /* 088B44 80087F44 0C01C870 */ jal func_800721C0 /* 088B48 80087F48 24050008 */ li $a1, 8 /* 088B4C 80087F4C 001070C0 */ sll $t6, $s0, 3 /* 088B50 80087F50 01D07023 */ subu $t6, $t6, $s0 /* 088B54 80087F54 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 088B58 80087F58 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088B5C 80087F5C 000E7140 */ sll $t6, $t6, 5 /* 088B60 80087F60 01CF1021 */ addu $v0, $t6, $t7 /* 088B64 80087F64 44800000 */ mtc1 $zero, $f0 /* 088B68 80087F68 C7A4003C */ lwc1 $f4, 0x3c($sp) /* 088B6C 80087F6C C7A60034 */ lwc1 $f6, 0x34($sp) /* 088B70 80087F70 87B80042 */ lh $t8, 0x42($sp) /* 088B74 80087F74 AFA20024 */ sw $v0, 0x24($sp) /* 088B78 80087F78 02002025 */ move $a0, $s0 /* 088B7C 80087F7C E4400030 */ swc1 $f0, 0x30($v0) /* 088B80 80087F80 E440002C */ swc1 $f0, 0x2c($v0) /* 088B84 80087F84 E4400028 */ swc1 $f0, 0x28($v0) /* 088B88 80087F88 E4440034 */ swc1 $f4, 0x34($v0) /* 088B8C 80087F8C E446003C */ swc1 $f6, 0x3c($v0) /* 088B90 80087F90 0C021D47 */ jal func_8008751C /* 088B94 80087F94 A45800C0 */ sh $t8, 0xc0($v0) /* 088B98 80087F98 3C01800E */ lui $at, %hi(D_800DC594) # $at, 0x800e /* 088B9C 80087F9C C428C594 */ lwc1 $f8, %lo(D_800DC594)($at) /* 088BA0 80087FA0 8FA20024 */ lw $v0, 0x24($sp) /* 088BA4 80087FA4 4600428D */ trunc.w.s $f10, $f8 /* 088BA8 80087FA8 44085000 */ mfc1 $t0, $f10 /* 088BAC 80087FAC 00000000 */ nop /* 088BB0 80087FB0 A44800B0 */ sh $t0, 0xb0($v0) .L80087FB4: /* 088BB4 80087FB4 8FAB0044 */ lw $t3, 0x44($sp) /* 088BB8 80087FB8 001048C0 */ sll $t1, $s0, 3 /* 088BBC 80087FBC 01304823 */ subu $t1, $t1, $s0 /* 088BC0 80087FC0 448B8000 */ mtc1 $t3, $f16 /* 088BC4 80087FC4 3C0A8016 */ lui $t2, %hi(D_80165C18) # $t2, 0x8016 /* 088BC8 80087FC8 254A5C18 */ addiu $t2, %lo(D_80165C18) # addiu $t2, $t2, 0x5c18 /* 088BCC 80087FCC 468084A0 */ cvt.s.w $f18, $f16 /* 088BD0 80087FD0 00094940 */ sll $t1, $t1, 5 /* 088BD4 80087FD4 012A1021 */ addu $v0, $t1, $t2 /* 088BD8 80087FD8 C444002C */ lwc1 $f4, 0x2c($v0) /* 088BDC 80087FDC 02002025 */ move $a0, $s0 /* 088BE0 80087FE0 C7A80038 */ lwc1 $f8, 0x38($sp) /* 088BE4 80087FE4 4612203E */ c.le.s $f4, $f18 /* 088BE8 80087FE8 00000000 */ nop /* 088BEC 80087FEC 45020009 */ bc1fl .L80088014 /* 088BF0 80087FF0 C446003C */ lwc1 $f6, 0x3c($v0) /* 088BF4 80087FF4 0C01C87A */ jal func_800721E8 /* 088BF8 80087FF8 24050008 */ li $a1, 8 /* 088BFC 80087FFC 0C021BF5 */ jal func_80086FD4 /* 088C00 80088000 02002025 */ move $a0, $s0 /* 088C04 80088004 240C0001 */ li $t4, 1 /* 088C08 80088008 10000006 */ b .L80088024 /* 088C0C 8008800C AFAC002C */ sw $t4, 0x2c($sp) /* 088C10 80088010 C446003C */ lwc1 $f6, 0x3c($v0) .L80088014: /* 088C14 80088014 02002025 */ move $a0, $s0 /* 088C18 80088018 46083281 */ sub.s $f10, $f6, $f8 /* 088C1C 8008801C 0C021DC4 */ jal func_80087710 /* 088C20 80088020 E44A003C */ swc1 $f10, 0x3c($v0) .L80088024: /* 088C24 80088024 8FBF001C */ lw $ra, 0x1c($sp) /* 088C28 80088028 8FA2002C */ lw $v0, 0x2c($sp) /* 088C2C 8008802C 8FB00018 */ lw $s0, 0x18($sp) /* 088C30 80088030 03E00008 */ jr $ra /* 088C34 80088034 27BD0030 */ addiu $sp, $sp, 0x30 glabel func_80088038 /* 088C38 80088038 000478C0 */ sll $t7, $a0, 3 /* 088C3C 8008803C 01E47823 */ subu $t7, $t7, $a0 /* 088C40 80088040 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 088C44 80088044 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 088C48 80088048 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 088C4C 8008804C 000F7940 */ sll $t7, $t7, 5 /* 088C50 80088050 01F81021 */ addu $v0, $t7, $t8 /* 088C54 80088054 945900C4 */ lhu $t9, 0xc4($v0) /* 088C58 80088058 C4440028 */ lwc1 $f4, 0x28($v0) /* 088C5C 8008805C C4460030 */ lwc1 $f6, 0x30($v0) /* 088C60 80088060 AFBF0014 */ sw $ra, 0x14($sp) /* 088C64 80088064 AFA40028 */ sw $a0, 0x28($sp) /* 088C68 80088068 03264021 */ addu $t0, $t9, $a2 /* 088C6C 8008806C AFA5002C */ sw $a1, 0x2c($sp) /* 088C70 80088070 AFA60030 */ sw $a2, 0x30($sp) /* 088C74 80088074 A44800C4 */ sh $t0, 0xc4($v0) /* 088C78 80088078 3104FFFF */ andi $a0, $t0, 0xffff /* 088C7C 8008807C AFA2001C */ sw $v0, 0x1c($sp) /* 088C80 80088080 E7A40024 */ swc1 $f4, 0x24($sp) /* 088C84 80088084 0C0AE006 */ jal func_802B8018 /* 088C88 80088088 E7A60020 */ swc1 $f6, 0x20($sp) /* 088C8C 8008808C C7A8002C */ lwc1 $f8, 0x2c($sp) /* 088C90 80088090 8FA2001C */ lw $v0, 0x1c($sp) /* 088C94 80088094 46080282 */ mul.s $f10, $f0, $f8 /* 088C98 80088098 944400C4 */ lhu $a0, 0xc4($v0) /* 088C9C 8008809C 0C0AE00E */ jal func_802B8038 /* 088CA0 800880A0 E44A0028 */ swc1 $f10, 0x28($v0) /* 088CA4 800880A4 C7B0002C */ lwc1 $f16, 0x2c($sp) /* 088CA8 800880A8 8FA2001C */ lw $v0, 0x1c($sp) /* 088CAC 800880AC C7A40024 */ lwc1 $f4, 0x24($sp) /* 088CB0 800880B0 46100082 */ mul.s $f2, $f0, $f16 /* 088CB4 800880B4 C7A80020 */ lwc1 $f8, 0x20($sp) /* 088CB8 800880B8 C4520028 */ lwc1 $f18, 0x28($v0) /* 088CBC 800880BC 8FBF0014 */ lw $ra, 0x14($sp) /* 088CC0 800880C0 27BD0028 */ addiu $sp, $sp, 0x28 /* 088CC4 800880C4 46049181 */ sub.s $f6, $f18, $f4 /* 088CC8 800880C8 E4420030 */ swc1 $f2, 0x30($v0) /* 088CCC 800880CC 46081281 */ sub.s $f10, $f2, $f8 /* 088CD0 800880D0 E4460038 */ swc1 $f6, 0x38($v0) /* 088CD4 800880D4 03E00008 */ jr $ra /* 088CD8 800880D8 E44A0040 */ swc1 $f10, 0x40($v0) /* 088CDC 800880DC 03E00008 */ jr $ra /* 088CE0 800880E0 00000000 */ nop glabel func_800880E4 /* 088CE4 800880E4 000470C0 */ sll $t6, $a0, 3 /* 088CE8 800880E8 01C47023 */ subu $t6, $t6, $a0 /* 088CEC 800880EC 000E7140 */ sll $t6, $t6, 5 /* 088CF0 800880F0 3C028016 */ lui $v0, %hi(D_80165C94) # 0x8016 /* 088CF4 800880F4 004E1021 */ addu $v0, $v0, $t6 /* 088CF8 800880F8 3C058016 */ lui $a1, %hi(D_80165760) # $a1, 0x8016 /* 088CFC 800880FC 3C068016 */ lui $a2, %hi(D_80165770) # $a2, 0x8016 /* 088D00 80088100 3C078016 */ lui $a3, %hi(D_80165780) # $a3, 0x8016 /* 088D04 80088104 3C038016 */ lui $v1, %hi(D_80165784) # $v1, 0x8016 /* 088D08 80088108 8C425C94 */ lw $v0, %lo(D_80165C94)($v0) # 0x5c94($v0) /* 088D0C 8008810C 24635784 */ addiu $v1, %lo(D_80165784) # addiu $v1, $v1, 0x5784 /* 088D10 80088110 24E75780 */ addiu $a3, %lo(D_80165780) # addiu $a3, $a3, 0x5780 /* 088D14 80088114 24C65770 */ addiu $a2, %lo(D_80165770) # addiu $a2, $a2, 0x5770 /* 088D18 80088118 24A55760 */ addiu $a1, %lo(D_80165760) # addiu $a1, $a1, 0x5760 .L8008811C: /* 088D1C 8008811C 844F0000 */ lh $t7, ($v0) /* 088D20 80088120 24E70002 */ addiu $a3, $a3, 2 /* 088D24 80088124 24A50002 */ addiu $a1, $a1, 2 /* 088D28 80088128 A4AFFFFE */ sh $t7, -2($a1) /* 088D2C 8008812C 84580002 */ lh $t8, 2($v0) /* 088D30 80088130 24C60002 */ addiu $a2, $a2, 2 /* 088D34 80088134 24420008 */ addiu $v0, $v0, 8 /* 088D38 80088138 A4D8FFFE */ sh $t8, -2($a2) /* 088D3C 8008813C 8459FFFC */ lh $t9, -4($v0) /* 088D40 80088140 14E3FFF6 */ bne $a3, $v1, .L8008811C /* 088D44 80088144 A4F9FFFE */ sh $t9, -2($a3) /* 088D48 80088148 03E00008 */ jr $ra /* 088D4C 8008814C 00000000 */ nop glabel func_80088150 /* 088D50 80088150 000470C0 */ sll $t6, $a0, 3 /* 088D54 80088154 01C47023 */ subu $t6, $t6, $a0 /* 088D58 80088158 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 088D5C 8008815C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088D60 80088160 000E7140 */ sll $t6, $t6, 5 /* 088D64 80088164 01CF1021 */ addu $v0, $t6, $t7 /* 088D68 80088168 8C58007C */ lw $t8, 0x7c($v0) /* 088D6C 8008816C 27190008 */ addiu $t9, $t8, 8 /* 088D70 80088170 03E00008 */ jr $ra /* 088D74 80088174 AC59007C */ sw $t9, 0x7c($v0) glabel func_80088178 /* 088D78 80088178 3C028016 */ lui $v0, %hi(D_80165760) # $v0, 0x8016 /* 088D7C 8008817C 3C038016 */ lui $v1, %hi(D_80165780) # $v1, 0x8016 /* 088D80 80088180 24425760 */ addiu $v0, %lo(D_80165760) # addiu $v0, $v0, 0x5760 /* 088D84 80088184 844E0002 */ lh $t6, 2($v0) /* 088D88 80088188 844F0000 */ lh $t7, ($v0) /* 088D8C 8008818C 24635780 */ addiu $v1, %lo(D_80165780) # addiu $v1, $v1, 0x5780 /* 088D90 80088190 84790002 */ lh $t9, 2($v1) /* 088D94 80088194 84680000 */ lh $t0, ($v1) /* 088D98 80088198 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 088D9C 8008819C 01CFC023 */ subu $t8, $t6, $t7 /* 088DA0 800881A0 44989000 */ mtc1 $t8, $f18 /* 088DA4 800881A4 03284823 */ subu $t1, $t9, $t0 /* 088DA8 800881A8 44898000 */ mtc1 $t1, $f16 /* 088DAC 800881AC 46809320 */ cvt.s.w $f12, $f18 /* 088DB0 800881B0 AFBF0014 */ sw $ra, 0x14($sp) /* 088DB4 800881B4 AFA40018 */ sw $a0, 0x18($sp) /* 088DB8 800881B8 AFA5001C */ sw $a1, 0x1c($sp) /* 088DBC 800881BC 0C0ADE0C */ jal func_802B7830 /* 088DC0 800881C0 468083A0 */ cvt.s.w $f14, $f16 /* 088DC4 800881C4 8FAA0018 */ lw $t2, 0x18($sp) /* 088DC8 800881C8 3C0C8016 */ lui $t4, %hi(D_80165C18) # $t4, 0x8016 /* 088DCC 800881CC 258C5C18 */ addiu $t4, %lo(D_80165C18) # addiu $t4, $t4, 0x5c18 /* 088DD0 800881D0 000A58C0 */ sll $t3, $t2, 3 /* 088DD4 800881D4 016A5823 */ subu $t3, $t3, $t2 /* 088DD8 800881D8 000B5940 */ sll $t3, $t3, 5 /* 088DDC 800881DC 016C1821 */ addu $v1, $t3, $t4 /* 088DE0 800881E0 946400C0 */ lhu $a0, 0xc0($v1) /* 088DE4 800881E4 8FA6001C */ lw $a2, 0x1c($sp) /* 088DE8 800881E8 00442823 */ subu $a1, $v0, $a0 /* 088DEC 800881EC 00057C00 */ sll $t7, $a1, 0x10 /* 088DF0 800881F0 000F2C03 */ sra $a1, $t7, 0x10 /* 088DF4 800881F4 18A00004 */ blez $a1, .L80088208 /* 088DF8 800881F8 0006CA00 */ sll $t9, $a2, 8 /* 088DFC 800881FC 00994021 */ addu $t0, $a0, $t9 /* 088E00 80088200 10000005 */ b .L80088218 /* 088E04 80088204 A46800C0 */ sh $t0, 0xc0($v1) .L80088208: /* 088E08 80088208 04A10003 */ bgez $a1, .L80088218 /* 088E0C 8008820C 00064A00 */ sll $t1, $a2, 8 /* 088E10 80088210 00895023 */ subu $t2, $a0, $t1 /* 088E14 80088214 A46A00C0 */ sh $t2, 0xc0($v1) .L80088218: /* 088E18 80088218 8FBF0014 */ lw $ra, 0x14($sp) /* 088E1C 8008821C 27BD0018 */ addiu $sp, $sp, 0x18 /* 088E20 80088220 03E00008 */ jr $ra /* 088E24 80088224 00000000 */ nop glabel func_80088228 /* 088E28 80088228 000470C0 */ sll $t6, $a0, 3 /* 088E2C 8008822C 01C47023 */ subu $t6, $t6, $a0 /* 088E30 80088230 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 088E34 80088234 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088E38 80088238 000E7140 */ sll $t6, $t6, 5 /* 088E3C 8008823C 01CF1021 */ addu $v0, $t6, $t7 /* 088E40 80088240 8C430080 */ lw $v1, 0x80($v0) /* 088E44 80088244 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 088E48 80088248 AFBF0014 */ sw $ra, 0x14($sp) /* 088E4C 8008824C 24630002 */ addiu $v1, $v1, 2 /* 088E50 80088250 A4400096 */ sh $zero, 0x96($v0) /* 088E54 80088254 AC43007C */ sw $v1, 0x7c($v0) /* 088E58 80088258 8478FFFE */ lh $t8, -2($v1) /* 088E5C 8008825C A4580094 */ sh $t8, 0x94($v0) /* 088E60 80088260 84790000 */ lh $t9, ($v1) /* 088E64 80088264 44992000 */ mtc1 $t9, $f4 /* 088E68 80088268 00000000 */ nop /* 088E6C 8008826C 468021A0 */ cvt.s.w $f6, $f4 /* 088E70 80088270 E4460028 */ swc1 $f6, 0x28($v0) /* 088E74 80088274 84680002 */ lh $t0, 2($v1) /* 088E78 80088278 44884000 */ mtc1 $t0, $f8 /* 088E7C 8008827C 00000000 */ nop /* 088E80 80088280 468042A0 */ cvt.s.w $f10, $f8 /* 088E84 80088284 E44A002C */ swc1 $f10, 0x2c($v0) /* 088E88 80088288 84690004 */ lh $t1, 4($v1) /* 088E8C 8008828C 44898000 */ mtc1 $t1, $f16 /* 088E90 80088290 00000000 */ nop /* 088E94 80088294 468084A0 */ cvt.s.w $f18, $f16 /* 088E98 80088298 0C021BF5 */ jal func_80086FD4 /* 088E9C 8008829C E4520030 */ swc1 $f18, 0x30($v0) /* 088EA0 800882A0 8FBF0014 */ lw $ra, 0x14($sp) /* 088EA4 800882A4 27BD0018 */ addiu $sp, $sp, 0x18 /* 088EA8 800882A8 03E00008 */ jr $ra /* 088EAC 800882AC 00000000 */ nop glabel func_800882B0 /* 088EB0 800882B0 3C188016 */ lui $t8, %hi(D_80165762) # $t8, 0x8016 /* 088EB4 800882B4 87185762 */ lh $t8, %lo(D_80165762)($t8) /* 088EB8 800882B8 000470C0 */ sll $t6, $a0, 3 /* 088EBC 800882BC 01C47023 */ subu $t6, $t6, $a0 /* 088EC0 800882C0 44982000 */ mtc1 $t8, $f4 /* 088EC4 800882C4 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 088EC8 800882C8 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088ECC 800882CC 468021A0 */ cvt.s.w $f6, $f4 /* 088ED0 800882D0 000E7140 */ sll $t6, $t6, 5 /* 088ED4 800882D4 01CF3021 */ addu $a2, $t6, $t7 /* 088ED8 800882D8 C4C80028 */ lwc1 $f8, 0x28($a2) /* 088EDC 800882DC 3C098016 */ lui $t1, %hi(D_80165772) # $t1, 0x8016 /* 088EE0 800882E0 85295772 */ lh $t1, %lo(D_80165772)($t1) /* 088EE4 800882E4 46083001 */ sub.s $f0, $f6, $f8 /* 088EE8 800882E8 3C0B8016 */ lui $t3, %hi(D_80165782) # $t3, 0x8016 /* 088EEC 800882EC 44899000 */ mtc1 $t1, $f18 /* 088EF0 800882F0 856B5782 */ lh $t3, %lo(D_80165782)($t3) /* 088EF4 800882F4 46000282 */ mul.s $f10, $f0, $f0 /* 088EF8 800882F8 C4C6002C */ lwc1 $f6, 0x2c($a2) /* 088EFC 800882FC 00A50019 */ multu $a1, $a1 /* 088F00 80088300 00001825 */ move $v1, $zero /* 088F04 80088304 46809120 */ cvt.s.w $f4, $f18 /* 088F08 80088308 4600540D */ trunc.w.s $f16, $f10 /* 088F0C 8008830C 00007812 */ mflo $t7 /* 088F10 80088310 46062081 */ sub.s $f2, $f4, $f6 /* 088F14 80088314 44028000 */ mfc1 $v0, $f16 /* 088F18 80088318 448B8000 */ mtc1 $t3, $f16 /* 088F1C 8008831C C4C40030 */ lwc1 $f4, 0x30($a2) /* 088F20 80088320 46021202 */ mul.s $f8, $f2, $f2 /* 088F24 80088324 468084A0 */ cvt.s.w $f18, $f16 /* 088F28 80088328 4600428D */ trunc.w.s $f10, $f8 /* 088F2C 8008832C 46049301 */ sub.s $f12, $f18, $f4 /* 088F30 80088330 44075000 */ mfc1 $a3, $f10 /* 088F34 80088334 460C6182 */ mul.s $f6, $f12, $f12 /* 088F38 80088338 00476821 */ addu $t5, $v0, $a3 /* 088F3C 8008833C 4600320D */ trunc.w.s $f8, $f6 /* 088F40 80088340 44084000 */ mfc1 $t0, $f8 /* 088F44 80088344 00000000 */ nop /* 088F48 80088348 01A87021 */ addu $t6, $t5, $t0 /* 088F4C 8008834C 01CFC023 */ subu $t8, $t6, $t7 /* 088F50 80088350 1F000002 */ bgtz $t8, .L8008835C /* 088F54 80088354 00000000 */ nop /* 088F58 80088358 24030001 */ li $v1, 1 .L8008835C: /* 088F5C 8008835C 03E00008 */ jr $ra /* 088F60 80088360 00601025 */ move $v0, $v1 glabel func_80088364 /* 088F64 80088364 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 088F68 80088368 AFBF001C */ sw $ra, 0x1c($sp) /* 088F6C 8008836C AFB00018 */ sw $s0, 0x18($sp) /* 088F70 80088370 0C022039 */ jal func_800880E4 /* 088F74 80088374 00808025 */ move $s0, $a0 /* 088F78 80088378 02002025 */ move $a0, $s0 /* 088F7C 8008837C 0C02205E */ jal func_80088178 /* 088F80 80088380 24050001 */ li $a1, 1 /* 088F84 80088384 0C021DA8 */ jal func_800876A0 /* 088F88 80088388 02002025 */ move $a0, $s0 /* 088F8C 8008838C 02002025 */ move $a0, $s0 /* 088F90 80088390 0C0220AC */ jal func_800882B0 /* 088F94 80088394 2405000A */ li $a1, 10 /* 088F98 80088398 10400013 */ beqz $v0, .L800883E8 /* 088F9C 8008839C 001070C0 */ sll $t6, $s0, 3 /* 088FA0 800883A0 01D07023 */ subu $t6, $t6, $s0 /* 088FA4 800883A4 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 088FA8 800883A8 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 088FAC 800883AC 000E7140 */ sll $t6, $t6, 5 /* 088FB0 800883B0 01CF1021 */ addu $v0, $t6, $t7 /* 088FB4 800883B4 94580096 */ lhu $t8, 0x96($v0) /* 088FB8 800883B8 944A0094 */ lhu $t2, 0x94($v0) /* 088FBC 800883BC 27190001 */ addiu $t9, $t8, 1 /* 088FC0 800883C0 3328FFFF */ andi $t0, $t9, 0xffff /* 088FC4 800883C4 25090003 */ addiu $t1, $t0, 3 /* 088FC8 800883C8 152A0005 */ bne $t1, $t2, .L800883E0 /* 088FCC 800883CC A4590096 */ sh $t9, 0x96($v0) /* 088FD0 800883D0 844B00AE */ lh $t3, 0xae($v0) /* 088FD4 800883D4 256C0001 */ addiu $t4, $t3, 1 /* 088FD8 800883D8 10000003 */ b .L800883E8 /* 088FDC 800883DC A44C00AE */ sh $t4, 0xae($v0) .L800883E0: /* 088FE0 800883E0 0C022054 */ jal func_80088150 /* 088FE4 800883E4 02002025 */ move $a0, $s0 .L800883E8: /* 088FE8 800883E8 8FBF001C */ lw $ra, 0x1c($sp) /* 088FEC 800883EC 8FB00018 */ lw $s0, 0x18($sp) /* 088FF0 800883F0 27BD0020 */ addiu $sp, $sp, 0x20 /* 088FF4 800883F4 03E00008 */ jr $ra /* 088FF8 800883F8 00000000 */ nop /* 088FFC 800883FC 000470C0 */ sll $t6, $a0, 3 /* 089000 80088400 01C47023 */ subu $t6, $t6, $a0 /* 089004 80088404 000E7140 */ sll $t6, $t6, 5 /* 089008 80088408 3C028016 */ lui $v0, %hi(D_80165CC6) # 0x8016 /* 08900C 8008840C 004E1021 */ addu $v0, $v0, $t6 /* 089010 80088410 84425CC6 */ lh $v0, %lo(D_80165CC6)($v0) # 0x5cc6($v0) /* 089014 80088414 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 089018 80088418 AFBF0014 */ sw $ra, 0x14($sp) /* 08901C 8008841C 10400013 */ beqz $v0, .L8008846C /* 089020 80088420 24010001 */ li $at, 1 /* 089024 80088424 10410007 */ beq $v0, $at, .L80088444 /* 089028 80088428 24010002 */ li $at, 2 /* 08902C 8008842C 10410009 */ beq $v0, $at, .L80088454 /* 089030 80088430 24010003 */ li $at, 3 /* 089034 80088434 1041000B */ beq $v0, $at, .L80088464 /* 089038 80088438 00000000 */ nop /* 08903C 8008843C 1000000C */ b .L80088470 /* 089040 80088440 8FBF0014 */ lw $ra, 0x14($sp) .L80088444: /* 089044 80088444 0C02208A */ jal func_80088228 /* 089048 80088448 00000000 */ nop /* 08904C 8008844C 10000008 */ b .L80088470 /* 089050 80088450 8FBF0014 */ lw $ra, 0x14($sp) .L80088454: /* 089054 80088454 0C0220D9 */ jal func_80088364 /* 089058 80088458 00000000 */ nop /* 08905C 8008845C 10000004 */ b .L80088470 /* 089060 80088460 8FBF0014 */ lw $ra, 0x14($sp) .L80088464: /* 089064 80088464 0C021BD8 */ jal func_80086F60 /* 089068 80088468 00000000 */ nop .L8008846C: /* 08906C 8008846C 8FBF0014 */ lw $ra, 0x14($sp) .L80088470: /* 089070 80088470 27BD0018 */ addiu $sp, $sp, 0x18 /* 089074 80088474 03E00008 */ jr $ra /* 089078 80088478 00000000 */ nop /* 08907C 8008847C 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 089080 80088480 AFBF0024 */ sw $ra, 0x24($sp) /* 089084 80088484 AFB00020 */ sw $s0, 0x20($sp) /* 089088 80088488 AFA40030 */ sw $a0, 0x30($sp) /* 08908C 8008848C AFA0002C */ sw $zero, 0x2c($sp) /* 089090 80088490 0C01C87A */ jal func_800721E8 /* 089094 80088494 3C050080 */ lui $a1, 0x80 /* 089098 80088498 8FA40030 */ lw $a0, 0x30($sp) /* 08909C 8008849C 0C01C88F */ jal func_8007223C /* 0890A0 800884A0 24050400 */ li $a1, 1024 /* 0890A4 800884A4 1040001F */ beqz $v0, .L80088524 /* 0890A8 800884A8 3C048019 */ lui $a0, %hi(D_8018C3B0) # $a0, 0x8019 /* 0890AC 800884AC 8FAE0030 */ lw $t6, 0x30($sp) /* 0890B0 800884B0 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 0890B4 800884B4 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 0890B8 800884B8 000E78C0 */ sll $t7, $t6, 3 /* 0890BC 800884BC 01EE7823 */ subu $t7, $t7, $t6 /* 0890C0 800884C0 000F7940 */ sll $t7, $t7, 5 /* 0890C4 800884C4 01F88021 */ addu $s0, $t7, $t8 /* 0890C8 800884C8 C604000C */ lwc1 $f4, 0xc($s0) /* 0890CC 800884CC 8E060004 */ lw $a2, 4($s0) /* 0890D0 800884D0 2484C3B0 */ addiu $a0, %lo(D_8018C3B0) # addiu $a0, $a0, -0x3c50 /* 0890D4 800884D4 3C054120 */ lui $a1, 0x4120 /* 0890D8 800884D8 3C0741A0 */ lui $a3, 0x41a0 /* 0890DC 800884DC 0C0AB772 */ jal func_802ADDC8 /* 0890E0 800884E0 E7A40010 */ swc1 $f4, 0x10($sp) /* 0890E4 800884E4 3C198019 */ lui $t9, %hi(D_8018C3B4) # $t9, 0x8019 /* 0890E8 800884E8 9739C3B4 */ lhu $t9, %lo(D_8018C3B4)($t9) /* 0890EC 800884EC 24010001 */ li $at, 1 /* 0890F0 800884F0 24080001 */ li $t0, 1 /* 0890F4 800884F4 17210004 */ bne $t9, $at, .L80088508 /* 0890F8 800884F8 3C050080 */ lui $a1, 0x80 /* 0890FC 800884FC AFA8002C */ sw $t0, 0x2c($sp) /* 089100 80088500 0C01C870 */ jal func_800721C0 /* 089104 80088504 8FA40030 */ lw $a0, 0x30($sp) .L80088508: /* 089108 80088508 44807000 */ mtc1 $zero, $f14 /* 08910C 8008850C 3C078019 */ lui $a3, %hi(D_8018C3BA) # $a3, 0x8019 /* 089110 80088510 94E7C3BA */ lhu $a3, %lo(D_8018C3BA)($a3) /* 089114 80088514 C60C0004 */ lwc1 $f12, 4($s0) /* 089118 80088518 0C0AAF8C */ jal func_802ABE30 /* 08911C 8008851C 8E06000C */ lw $a2, 0xc($s0) /* 089120 80088520 E6000044 */ swc1 $f0, 0x44($s0) .L80088524: /* 089124 80088524 8FBF0024 */ lw $ra, 0x24($sp) /* 089128 80088528 8FA2002C */ lw $v0, 0x2c($sp) /* 08912C 8008852C 8FB00020 */ lw $s0, 0x20($sp) /* 089130 80088530 03E00008 */ jr $ra /* 089134 80088534 27BD0030 */ addiu $sp, $sp, 0x30 glabel func_80088538 /* 089138 80088538 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 08913C 8008853C AFBF0024 */ sw $ra, 0x24($sp) /* 089140 80088540 AFB10020 */ sw $s1, 0x20($sp) /* 089144 80088544 AFB0001C */ sw $s0, 0x1c($sp) /* 089148 80088548 AFA40030 */ sw $a0, 0x30($sp) /* 08914C 8008854C AFA0002C */ sw $zero, 0x2c($sp) /* 089150 80088550 0C01C87A */ jal func_800721E8 /* 089154 80088554 3C050080 */ lui $a1, 0x80 /* 089158 80088558 8FA40030 */ lw $a0, 0x30($sp) /* 08915C 8008855C 0C01C88F */ jal func_8007223C /* 089160 80088560 24050400 */ li $a1, 1024 /* 089164 80088564 10400027 */ beqz $v0, .L80088604 /* 089168 80088568 3C118019 */ lui $s1, %hi(D_8018C3B0) # $s1, 0x8019 /* 08916C 8008856C 8FAE0030 */ lw $t6, 0x30($sp) /* 089170 80088570 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 089174 80088574 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 089178 80088578 000E78C0 */ sll $t7, $t6, 3 /* 08917C 8008857C 01EE7823 */ subu $t7, $t7, $t6 /* 089180 80088580 000F7940 */ sll $t7, $t7, 5 /* 089184 80088584 01F88021 */ addu $s0, $t7, $t8 /* 089188 80088588 C604000C */ lwc1 $f4, 0xc($s0) /* 08918C 8008858C 2631C3B0 */ addiu $s1, %lo(D_8018C3B0) # addiu $s1, $s1, -0x3c50 /* 089190 80088590 02202025 */ move $a0, $s1 /* 089194 80088594 8E060004 */ lw $a2, 4($s0) /* 089198 80088598 3C054120 */ lui $a1, 0x4120 /* 08919C 8008859C 3C0741A0 */ lui $a3, 0x41a0 /* 0891A0 800885A0 0C0AB772 */ jal func_802ADDC8 /* 0891A4 800885A4 E7A40010 */ swc1 $f4, 0x10($sp) /* 0891A8 800885A8 96390004 */ lhu $t9, 4($s1) /* 0891AC 800885AC 24010001 */ li $at, 1 /* 0891B0 800885B0 24080001 */ li $t0, 1 /* 0891B4 800885B4 17210004 */ bne $t9, $at, .L800885C8 /* 0891B8 800885B8 3C050080 */ lui $a1, 0x80 /* 0891BC 800885BC AFA8002C */ sw $t0, 0x2c($sp) /* 0891C0 800885C0 0C01C870 */ jal func_800721C0 /* 0891C4 800885C4 8FA40030 */ lw $a0, 0x30($sp) .L800885C8: /* 0891C8 800885C8 44807000 */ mtc1 $zero, $f14 /* 0891CC 800885CC C60C0004 */ lwc1 $f12, 4($s0) /* 0891D0 800885D0 8E06000C */ lw $a2, 0xc($s0) /* 0891D4 800885D4 0C0AAF8C */ jal func_802ABE30 /* 0891D8 800885D8 9627000A */ lhu $a3, 0xa($s1) /* 0891DC 800885DC E6000044 */ swc1 $f0, 0x44($s0) /* 0891E0 800885E0 C62C0038 */ lwc1 $f12, 0x38($s1) /* 0891E4 800885E4 0C0ADE0C */ jal func_802B7830 /* 0891E8 800885E8 C62E0034 */ lwc1 $f14, 0x34($s1) /* 0891EC 800885EC 24494000 */ addiu $t1, $v0, 0x4000 /* 0891F0 800885F0 A60900B8 */ sh $t1, 0xb8($s0) /* 0891F4 800885F4 C62C0030 */ lwc1 $f12, 0x30($s1) /* 0891F8 800885F8 0C0ADE0C */ jal func_802B7830 /* 0891FC 800885FC C62E0034 */ lwc1 $f14, 0x34($s1) /* 089200 80088600 A60200BC */ sh $v0, 0xbc($s0) .L80088604: /* 089204 80088604 8FBF0024 */ lw $ra, 0x24($sp) /* 089208 80088608 8FA2002C */ lw $v0, 0x2c($sp) /* 08920C 8008860C 8FB0001C */ lw $s0, 0x1c($sp) /* 089210 80088610 8FB10020 */ lw $s1, 0x20($sp) /* 089214 80088614 03E00008 */ jr $ra /* 089218 80088618 27BD0030 */ addiu $sp, $sp, 0x30 glabel func_8008861C /* 08921C 8008861C 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 089220 80088620 AFBF0024 */ sw $ra, 0x24($sp) /* 089224 80088624 AFB10020 */ sw $s1, 0x20($sp) /* 089228 80088628 AFB0001C */ sw $s0, 0x1c($sp) /* 08922C 8008862C AFA40030 */ sw $a0, 0x30($sp) /* 089230 80088630 AFA0002C */ sw $zero, 0x2c($sp) /* 089234 80088634 0C01C87A */ jal func_800721E8 /* 089238 80088638 3C050080 */ lui $a1, 0x80 /* 08923C 8008863C 8FA40030 */ lw $a0, 0x30($sp) /* 089240 80088640 0C01C88F */ jal func_8007223C /* 089244 80088644 24050400 */ li $a1, 1024 /* 089248 80088648 10400024 */ beqz $v0, .L800886DC /* 08924C 8008864C 3C118019 */ lui $s1, %hi(D_8018C3B0) # $s1, 0x8019 /* 089250 80088650 8FAE0030 */ lw $t6, 0x30($sp) /* 089254 80088654 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 089258 80088658 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08925C 8008865C 000E78C0 */ sll $t7, $t6, 3 /* 089260 80088660 01EE7823 */ subu $t7, $t7, $t6 /* 089264 80088664 000F7940 */ sll $t7, $t7, 5 /* 089268 80088668 01F88021 */ addu $s0, $t7, $t8 /* 08926C 8008866C C604000C */ lwc1 $f4, 0xc($s0) /* 089270 80088670 2631C3B0 */ addiu $s1, %lo(D_8018C3B0) # addiu $s1, $s1, -0x3c50 /* 089274 80088674 02202025 */ move $a0, $s1 /* 089278 80088678 8E060004 */ lw $a2, 4($s0) /* 08927C 8008867C 3C054120 */ lui $a1, 0x4120 /* 089280 80088680 3C0741A0 */ lui $a3, 0x41a0 /* 089284 80088684 0C0AB772 */ jal func_802ADDC8 /* 089288 80088688 E7A40010 */ swc1 $f4, 0x10($sp) /* 08928C 8008868C 96390004 */ lhu $t9, 4($s1) /* 089290 80088690 24010001 */ li $at, 1 /* 089294 80088694 24080001 */ li $t0, 1 /* 089298 80088698 17210004 */ bne $t9, $at, .L800886AC /* 08929C 8008869C 3C050080 */ lui $a1, 0x80 /* 0892A0 800886A0 AFA8002C */ sw $t0, 0x2c($sp) /* 0892A4 800886A4 0C01C870 */ jal func_800721C0 /* 0892A8 800886A8 8FA40030 */ lw $a0, 0x30($sp) .L800886AC: /* 0892AC 800886AC 44807000 */ mtc1 $zero, $f14 /* 0892B0 800886B0 C60C0004 */ lwc1 $f12, 4($s0) /* 0892B4 800886B4 8E06000C */ lw $a2, 0xc($s0) /* 0892B8 800886B8 0C0AAF8C */ jal func_802ABE30 /* 0892BC 800886BC 9627000A */ lhu $a3, 0xa($s1) /* 0892C0 800886C0 C6260030 */ lwc1 $f6, 0x30($s1) /* 0892C4 800886C4 C6280034 */ lwc1 $f8, 0x34($s1) /* 0892C8 800886C8 C62A0038 */ lwc1 $f10, 0x38($s1) /* 0892CC 800886CC E6000044 */ swc1 $f0, 0x44($s0) /* 0892D0 800886D0 E606001C */ swc1 $f6, 0x1c($s0) /* 0892D4 800886D4 E6080020 */ swc1 $f8, 0x20($s0) /* 0892D8 800886D8 E60A0024 */ swc1 $f10, 0x24($s0) .L800886DC: /* 0892DC 800886DC 8FBF0024 */ lw $ra, 0x24($sp) /* 0892E0 800886E0 8FA2002C */ lw $v0, 0x2c($sp) /* 0892E4 800886E4 8FB0001C */ lw $s0, 0x1c($sp) /* 0892E8 800886E8 8FB10020 */ lw $s1, 0x20($sp) /* 0892EC 800886EC 03E00008 */ jr $ra /* 0892F0 800886F0 27BD0030 */ addiu $sp, $sp, 0x30 glabel func_800886F4 /* 0892F4 800886F4 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0892F8 800886F8 AFA40028 */ sw $a0, 0x28($sp) /* 0892FC 800886FC 8FAE0028 */ lw $t6, 0x28($sp) /* 089300 80088700 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 089304 80088704 AFB0001C */ sw $s0, 0x1c($sp) /* 089308 80088708 000E78C0 */ sll $t7, $t6, 3 /* 08930C 8008870C 01EE7823 */ subu $t7, $t7, $t6 /* 089310 80088710 000F7940 */ sll $t7, $t7, 5 /* 089314 80088714 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 089318 80088718 AFB10020 */ sw $s1, 0x20($sp) /* 08931C 8008871C 01F88021 */ addu $s0, $t7, $t8 /* 089320 80088720 C604000C */ lwc1 $f4, 0xc($s0) /* 089324 80088724 3C118019 */ lui $s1, %hi(D_8018C3B0) # $s1, 0x8019 /* 089328 80088728 2631C3B0 */ addiu $s1, %lo(D_8018C3B0) # addiu $s1, $s1, -0x3c50 /* 08932C 8008872C AFBF0024 */ sw $ra, 0x24($sp) /* 089330 80088730 02202025 */ move $a0, $s1 /* 089334 80088734 8E060004 */ lw $a2, 4($s0) /* 089338 80088738 3C054120 */ lui $a1, 0x4120 /* 08933C 8008873C 3C0741A0 */ lui $a3, 0x41a0 /* 089340 80088740 0C0AB772 */ jal func_802ADDC8 /* 089344 80088744 E7A40010 */ swc1 $f4, 0x10($sp) /* 089348 80088748 96390004 */ lhu $t9, 4($s1) /* 08934C 8008874C 24010001 */ li $at, 1 /* 089350 80088750 8FA40028 */ lw $a0, 0x28($sp) /* 089354 80088754 17210013 */ bne $t9, $at, .L800887A4 /* 089358 80088758 00000000 */ nop /* 08935C 8008875C 0C01C870 */ jal func_800721C0 /* 089360 80088760 3C050080 */ lui $a1, 0x80 /* 089364 80088764 44807000 */ mtc1 $zero, $f14 /* 089368 80088768 C60C0004 */ lwc1 $f12, 4($s0) /* 08936C 8008876C 8E06000C */ lw $a2, 0xc($s0) /* 089370 80088770 0C0AAF8C */ jal func_802ABE30 /* 089374 80088774 9627000A */ lhu $a3, 0xa($s1) /* 089378 80088778 E6000044 */ swc1 $f0, 0x44($s0) /* 08937C 8008877C C62C0038 */ lwc1 $f12, 0x38($s1) /* 089380 80088780 0C0ADE0C */ jal func_802B7830 /* 089384 80088784 C62E0034 */ lwc1 $f14, 0x34($s1) /* 089388 80088788 24484000 */ addiu $t0, $v0, 0x4000 /* 08938C 8008878C A60800B8 */ sh $t0, 0xb8($s0) /* 089390 80088790 C62C0030 */ lwc1 $f12, 0x30($s1) /* 089394 80088794 0C0ADE0C */ jal func_802B7830 /* 089398 80088798 C62E0034 */ lwc1 $f14, 0x34($s1) /* 08939C 8008879C 10000003 */ b .L800887AC /* 0893A0 800887A0 A60200BC */ sh $v0, 0xbc($s0) .L800887A4: /* 0893A4 800887A4 0C01C87A */ jal func_800721E8 /* 0893A8 800887A8 3C050080 */ lui $a1, 0x80 .L800887AC: /* 0893AC 800887AC 8FBF0024 */ lw $ra, 0x24($sp) /* 0893B0 800887B0 8FB0001C */ lw $s0, 0x1c($sp) /* 0893B4 800887B4 8FB10020 */ lw $s1, 0x20($sp) /* 0893B8 800887B8 03E00008 */ jr $ra /* 0893BC 800887BC 27BD0028 */ addiu $sp, $sp, 0x28 glabel func_800887C0 /* 0893C0 800887C0 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 0893C4 800887C4 AFA40028 */ sw $a0, 0x28($sp) /* 0893C8 800887C8 8FAE0028 */ lw $t6, 0x28($sp) /* 0893CC 800887CC 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 0893D0 800887D0 AFB0001C */ sw $s0, 0x1c($sp) /* 0893D4 800887D4 000E78C0 */ sll $t7, $t6, 3 /* 0893D8 800887D8 01EE7823 */ subu $t7, $t7, $t6 /* 0893DC 800887DC 000F7940 */ sll $t7, $t7, 5 /* 0893E0 800887E0 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 0893E4 800887E4 AFB10020 */ sw $s1, 0x20($sp) /* 0893E8 800887E8 01F88021 */ addu $s0, $t7, $t8 /* 0893EC 800887EC C604000C */ lwc1 $f4, 0xc($s0) /* 0893F0 800887F0 3C118019 */ lui $s1, %hi(D_8018C3B0) # $s1, 0x8019 /* 0893F4 800887F4 2631C3B0 */ addiu $s1, %lo(D_8018C3B0) # addiu $s1, $s1, -0x3c50 /* 0893F8 800887F8 AFBF0024 */ sw $ra, 0x24($sp) /* 0893FC 800887FC 02202025 */ move $a0, $s1 /* 089400 80088800 8E060004 */ lw $a2, 4($s0) /* 089404 80088804 3C054120 */ lui $a1, 0x4120 /* 089408 80088808 3C0741A0 */ lui $a3, 0x41a0 /* 08940C 8008880C 0C0AB772 */ jal func_802ADDC8 /* 089410 80088810 E7A40010 */ swc1 $f4, 0x10($sp) /* 089414 80088814 96390004 */ lhu $t9, 4($s1) /* 089418 80088818 24010001 */ li $at, 1 /* 08941C 8008881C 8FA40028 */ lw $a0, 0x28($sp) /* 089420 80088820 17210010 */ bne $t9, $at, .L80088864 /* 089424 80088824 00000000 */ nop /* 089428 80088828 0C01C870 */ jal func_800721C0 /* 08942C 8008882C 3C050080 */ lui $a1, 0x80 /* 089430 80088830 44807000 */ mtc1 $zero, $f14 /* 089434 80088834 C60C0004 */ lwc1 $f12, 4($s0) /* 089438 80088838 8E06000C */ lw $a2, 0xc($s0) /* 08943C 8008883C 0C0AAF8C */ jal func_802ABE30 /* 089440 80088840 9627000A */ lhu $a3, 0xa($s1) /* 089444 80088844 C6260030 */ lwc1 $f6, 0x30($s1) /* 089448 80088848 C6280034 */ lwc1 $f8, 0x34($s1) /* 08944C 8008884C C62A0038 */ lwc1 $f10, 0x38($s1) /* 089450 80088850 E6000044 */ swc1 $f0, 0x44($s0) /* 089454 80088854 E6060038 */ swc1 $f6, 0x38($s0) /* 089458 80088858 E608003C */ swc1 $f8, 0x3c($s0) /* 08945C 8008885C 10000003 */ b .L8008886C /* 089460 80088860 E60A0040 */ swc1 $f10, 0x40($s0) .L80088864: /* 089464 80088864 0C01C87A */ jal func_800721E8 /* 089468 80088868 3C050080 */ lui $a1, 0x80 .L8008886C: /* 08946C 8008886C 8FBF0024 */ lw $ra, 0x24($sp) /* 089470 80088870 8FB0001C */ lw $s0, 0x1c($sp) /* 089474 80088874 8FB10020 */ lw $s1, 0x20($sp) /* 089478 80088878 03E00008 */ jr $ra /* 08947C 8008887C 27BD0028 */ addiu $sp, $sp, 0x28 /* 089480 80088880 000470C0 */ sll $t6, $a0, 3 /* 089484 80088884 01C47023 */ subu $t6, $t6, $a0 /* 089488 80088888 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08948C 8008888C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 089490 80088890 000E7140 */ sll $t6, $t6, 5 /* 089494 80088894 01CF3021 */ addu $a2, $t6, $t7 /* 089498 80088898 C4C40004 */ lwc1 $f4, 4($a2) /* 08949C 8008889C C4A60014 */ lwc1 $f6, 0x14($a1) /* 0894A0 800888A0 C4D0000C */ lwc1 $f16, 0xc($a2) /* 0894A4 800888A4 C4B2001C */ lwc1 $f18, 0x1c($a1) /* 0894A8 800888A8 46062201 */ sub.s $f8, $f4, $f6 /* 0894AC 800888AC 46128101 */ sub.s $f4, $f16, $f18 /* 0894B0 800888B0 4600428D */ trunc.w.s $f10, $f8 /* 0894B4 800888B4 4600218D */ trunc.w.s $f6, $f4 /* 0894B8 800888B8 44035000 */ mfc1 $v1, $f10 /* 0894BC 800888BC 00000000 */ nop /* 0894C0 800888C0 00630019 */ multu $v1, $v1 /* 0894C4 800888C4 44073000 */ mfc1 $a3, $f6 /* 0894C8 800888C8 00004012 */ mflo $t0 /* 0894CC 800888CC 00000000 */ nop /* 0894D0 800888D0 00000000 */ nop /* 0894D4 800888D4 00E70019 */ multu $a3, $a3 /* 0894D8 800888D8 00004812 */ mflo $t1 /* 0894DC 800888DC 01091021 */ addu $v0, $t0, $t1 /* 0894E0 800888E0 03E00008 */ jr $ra /* 0894E4 800888E4 00000000 */ nop /* 0894E8 800888E8 000470C0 */ sll $t6, $a0, 3 /* 0894EC 800888EC 01C47023 */ subu $t6, $t6, $a0 /* 0894F0 800888F0 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 0894F4 800888F4 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 0894F8 800888F8 000E7140 */ sll $t6, $t6, 5 /* 0894FC 800888FC 01CF3021 */ addu $a2, $t6, $t7 /* 089500 80088900 C4C40004 */ lwc1 $f4, 4($a2) /* 089504 80088904 C4A60014 */ lwc1 $f6, 0x14($a1) /* 089508 80088908 C4D00008 */ lwc1 $f16, 8($a2) /* 08950C 8008890C C4B20018 */ lwc1 $f18, 0x18($a1) /* 089510 80088910 46062201 */ sub.s $f8, $f4, $f6 /* 089514 80088914 46128101 */ sub.s $f4, $f16, $f18 /* 089518 80088918 4600428D */ trunc.w.s $f10, $f8 /* 08951C 8008891C C4C8000C */ lwc1 $f8, 0xc($a2) /* 089520 80088920 4600218D */ trunc.w.s $f6, $f4 /* 089524 80088924 44035000 */ mfc1 $v1, $f10 /* 089528 80088928 C4AA001C */ lwc1 $f10, 0x1c($a1) /* 08952C 8008892C 00630019 */ multu $v1, $v1 /* 089530 80088930 44073000 */ mfc1 $a3, $f6 /* 089534 80088934 460A4401 */ sub.s $f16, $f8, $f10 /* 089538 80088938 4600848D */ trunc.w.s $f18, $f16 /* 08953C 8008893C 00005012 */ mflo $t2 /* 089540 80088940 44089000 */ mfc1 $t0, $f18 /* 089544 80088944 00000000 */ nop /* 089548 80088948 00E70019 */ multu $a3, $a3 /* 08954C 8008894C 00005812 */ mflo $t3 /* 089550 80088950 014B6021 */ addu $t4, $t2, $t3 /* 089554 80088954 00000000 */ nop /* 089558 80088958 01080019 */ multu $t0, $t0 /* 08955C 8008895C 00006812 */ mflo $t5 /* 089560 80088960 018D1021 */ addu $v0, $t4, $t5 /* 089564 80088964 03E00008 */ jr $ra /* 089568 80088968 00000000 */ nop glabel func_8008896C /* 08956C 8008896C 000470C0 */ sll $t6, $a0, 3 /* 089570 80088970 01C47023 */ subu $t6, $t6, $a0 /* 089574 80088974 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 089578 80088978 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08957C 8008897C 000E7140 */ sll $t6, $t6, 5 /* 089580 80088980 01CF3021 */ addu $a2, $t6, $t7 /* 089584 80088984 C4C40004 */ lwc1 $f4, 4($a2) /* 089588 80088988 C4A60000 */ lwc1 $f6, ($a1) /* 08958C 8008898C C4D0000C */ lwc1 $f16, 0xc($a2) /* 089590 80088990 C4B20008 */ lwc1 $f18, 8($a1) /* 089594 80088994 46062201 */ sub.s $f8, $f4, $f6 /* 089598 80088998 46128101 */ sub.s $f4, $f16, $f18 /* 08959C 8008899C 4600428D */ trunc.w.s $f10, $f8 /* 0895A0 800889A0 4600218D */ trunc.w.s $f6, $f4 /* 0895A4 800889A4 44035000 */ mfc1 $v1, $f10 /* 0895A8 800889A8 00000000 */ nop /* 0895AC 800889AC 00630019 */ multu $v1, $v1 /* 0895B0 800889B0 44073000 */ mfc1 $a3, $f6 /* 0895B4 800889B4 00004012 */ mflo $t0 /* 0895B8 800889B8 00000000 */ nop /* 0895BC 800889BC 00000000 */ nop /* 0895C0 800889C0 00E70019 */ multu $a3, $a3 /* 0895C4 800889C4 00004812 */ mflo $t1 /* 0895C8 800889C8 01091021 */ addu $v0, $t0, $t1 /* 0895CC 800889CC 03E00008 */ jr $ra /* 0895D0 800889D0 00000000 */ nop /* 0895D4 800889D4 000470C0 */ sll $t6, $a0, 3 /* 0895D8 800889D8 01C47023 */ subu $t6, $t6, $a0 /* 0895DC 800889DC 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 0895E0 800889E0 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 0895E4 800889E4 000E7140 */ sll $t6, $t6, 5 /* 0895E8 800889E8 01CF3021 */ addu $a2, $t6, $t7 /* 0895EC 800889EC C4C40004 */ lwc1 $f4, 4($a2) /* 0895F0 800889F0 C4A60000 */ lwc1 $f6, ($a1) /* 0895F4 800889F4 C4D00008 */ lwc1 $f16, 8($a2) /* 0895F8 800889F8 C4B20004 */ lwc1 $f18, 4($a1) /* 0895FC 800889FC 46062201 */ sub.s $f8, $f4, $f6 /* 089600 80088A00 46128101 */ sub.s $f4, $f16, $f18 /* 089604 80088A04 4600428D */ trunc.w.s $f10, $f8 /* 089608 80088A08 C4C8000C */ lwc1 $f8, 0xc($a2) /* 08960C 80088A0C 4600218D */ trunc.w.s $f6, $f4 /* 089610 80088A10 44035000 */ mfc1 $v1, $f10 /* 089614 80088A14 C4AA0008 */ lwc1 $f10, 8($a1) /* 089618 80088A18 00630019 */ multu $v1, $v1 /* 08961C 80088A1C 44073000 */ mfc1 $a3, $f6 /* 089620 80088A20 460A4401 */ sub.s $f16, $f8, $f10 /* 089624 80088A24 4600848D */ trunc.w.s $f18, $f16 /* 089628 80088A28 00005012 */ mflo $t2 /* 08962C 80088A2C 44089000 */ mfc1 $t0, $f18 /* 089630 80088A30 00000000 */ nop /* 089634 80088A34 00E70019 */ multu $a3, $a3 /* 089638 80088A38 00005812 */ mflo $t3 /* 08963C 80088A3C 014B6021 */ addu $t4, $t2, $t3 /* 089640 80088A40 00000000 */ nop /* 089644 80088A44 01080019 */ multu $t0, $t0 /* 089648 80088A48 00006812 */ mflo $t5 /* 08964C 80088A4C 018D1021 */ addu $v0, $t4, $t5 /* 089650 80088A50 03E00008 */ jr $ra /* 089654 80088A54 00000000 */ nop glabel func_80088A58 /* 089658 80088A58 000470C0 */ sll $t6, $a0, 3 /* 08965C 80088A5C 01C47023 */ subu $t6, $t6, $a0 /* 089660 80088A60 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 089664 80088A64 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 089668 80088A68 000E7140 */ sll $t6, $t6, 5 /* 08966C 80088A6C 01CF1021 */ addu $v0, $t6, $t7 /* 089670 80088A70 C4440004 */ lwc1 $f4, 4($v0) /* 089674 80088A74 C4A60014 */ lwc1 $f6, 0x14($a1) /* 089678 80088A78 44866000 */ mtc1 $a2, $f12 /* 08967C 80088A7C C448000C */ lwc1 $f8, 0xc($v0) /* 089680 80088A80 46062001 */ sub.s $f0, $f4, $f6 /* 089684 80088A84 C4AA001C */ lwc1 $f10, 0x1c($a1) /* 089688 80088A88 460C6402 */ mul.s $f16, $f12, $f12 /* 08968C 80088A8C 00001825 */ move $v1, $zero /* 089690 80088A90 460A4081 */ sub.s $f2, $f8, $f10 /* 089694 80088A94 46000482 */ mul.s $f18, $f0, $f0 /* 089698 80088A98 00000000 */ nop /* 08969C 80088A9C 46021102 */ mul.s $f4, $f2, $f2 /* 0896A0 80088AA0 46049180 */ add.s $f6, $f18, $f4 /* 0896A4 80088AA4 4610303E */ c.le.s $f6, $f16 /* 0896A8 80088AA8 00000000 */ nop /* 0896AC 80088AAC 45000002 */ bc1f .L80088AB8 /* 0896B0 80088AB0 00000000 */ nop /* 0896B4 80088AB4 24030001 */ li $v1, 1 .L80088AB8: /* 0896B8 80088AB8 03E00008 */ jr $ra /* 0896BC 80088ABC 00601025 */ move $v0, $v1 /* 0896C0 80088AC0 000470C0 */ sll $t6, $a0, 3 /* 0896C4 80088AC4 01C47023 */ subu $t6, $t6, $a0 /* 0896C8 80088AC8 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 0896CC 80088ACC 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 0896D0 80088AD0 000E7140 */ sll $t6, $t6, 5 /* 0896D4 80088AD4 AFA7000C */ sw $a3, 0xc($sp) /* 0896D8 80088AD8 01CF1021 */ addu $v0, $t6, $t7 /* 0896DC 80088ADC C4440004 */ lwc1 $f4, 4($v0) /* 0896E0 80088AE0 C4A60014 */ lwc1 $f6, 0x14($a1) /* 0896E4 80088AE4 C448000C */ lwc1 $f8, 0xc($v0) /* 0896E8 80088AE8 C4AA001C */ lwc1 $f10, 0x1c($a1) /* 0896EC 80088AEC 46062001 */ sub.s $f0, $f4, $f6 /* 0896F0 80088AF0 44867000 */ mtc1 $a2, $f14 /* 0896F4 80088AF4 00001825 */ move $v1, $zero /* 0896F8 80088AF8 460A4081 */ sub.s $f2, $f8, $f10 /* 0896FC 80088AFC 46000402 */ mul.s $f16, $f0, $f0 /* 089700 80088B00 C7A6000C */ lwc1 $f6, 0xc($sp) /* 089704 80088B04 46021482 */ mul.s $f18, $f2, $f2 /* 089708 80088B08 46128300 */ add.s $f12, $f16, $f18 /* 08970C 80088B0C 460E7102 */ mul.s $f4, $f14, $f14 /* 089710 80088B10 460C203E */ c.le.s $f4, $f12 /* 089714 80088B14 00000000 */ nop /* 089718 80088B18 45000007 */ bc1f .L80088B38 /* 08971C 80088B1C 00000000 */ nop /* 089720 80088B20 46063202 */ mul.s $f8, $f6, $f6 /* 089724 80088B24 4608603E */ c.le.s $f12, $f8 /* 089728 80088B28 00000000 */ nop /* 08972C 80088B2C 45000002 */ bc1f .L80088B38 /* 089730 80088B30 00000000 */ nop /* 089734 80088B34 24030001 */ li $v1, 1 .L80088B38: /* 089738 80088B38 03E00008 */ jr $ra /* 08973C 80088B3C 00601025 */ move $v0, $v1 /* 089740 80088B40 000470C0 */ sll $t6, $a0, 3 /* 089744 80088B44 01C47023 */ subu $t6, $t6, $a0 /* 089748 80088B48 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08974C 80088B4C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 089750 80088B50 000E7140 */ sll $t6, $t6, 5 /* 089754 80088B54 01CF1021 */ addu $v0, $t6, $t7 /* 089758 80088B58 C4440004 */ lwc1 $f4, 4($v0) /* 08975C 80088B5C C4A60014 */ lwc1 $f6, 0x14($a1) /* 089760 80088B60 44867000 */ mtc1 $a2, $f14 /* 089764 80088B64 C4480008 */ lwc1 $f8, 8($v0) /* 089768 80088B68 46062001 */ sub.s $f0, $f4, $f6 /* 08976C 80088B6C C4AA0018 */ lwc1 $f10, 0x18($a1) /* 089770 80088B70 460E7102 */ mul.s $f4, $f14, $f14 /* 089774 80088B74 C450000C */ lwc1 $f16, 0xc($v0) /* 089778 80088B78 460A4081 */ sub.s $f2, $f8, $f10 /* 08977C 80088B7C 46000182 */ mul.s $f6, $f0, $f0 /* 089780 80088B80 C4B2001C */ lwc1 $f18, 0x1c($a1) /* 089784 80088B84 00001825 */ move $v1, $zero /* 089788 80088B88 46021202 */ mul.s $f8, $f2, $f2 /* 08978C 80088B8C 46128301 */ sub.s $f12, $f16, $f18 /* 089790 80088B90 460C6402 */ mul.s $f16, $f12, $f12 /* 089794 80088B94 46083280 */ add.s $f10, $f6, $f8 /* 089798 80088B98 46105480 */ add.s $f18, $f10, $f16 /* 08979C 80088B9C 4604903E */ c.le.s $f18, $f4 /* 0897A0 80088BA0 00000000 */ nop /* 0897A4 80088BA4 45000002 */ bc1f .L80088BB0 /* 0897A8 80088BA8 00000000 */ nop /* 0897AC 80088BAC 24030001 */ li $v1, 1 .L80088BB0: /* 0897B0 80088BB0 03E00008 */ jr $ra /* 0897B4 80088BB4 00601025 */ move $v0, $v1 glabel func_80088BB8 /* 0897B8 80088BB8 000470C0 */ sll $t6, $a0, 3 /* 0897BC 80088BBC 01C47023 */ subu $t6, $t6, $a0 /* 0897C0 80088BC0 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 0897C4 80088BC4 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 0897C8 80088BC8 000E7140 */ sll $t6, $t6, 5 /* 0897CC 80088BCC 01CF1021 */ addu $v0, $t6, $t7 /* 0897D0 80088BD0 C4440004 */ lwc1 $f4, 4($v0) /* 0897D4 80088BD4 C4A60000 */ lwc1 $f6, ($a1) /* 0897D8 80088BD8 44866000 */ mtc1 $a2, $f12 /* 0897DC 80088BDC C448000C */ lwc1 $f8, 0xc($v0) /* 0897E0 80088BE0 46062001 */ sub.s $f0, $f4, $f6 /* 0897E4 80088BE4 C4AA0008 */ lwc1 $f10, 8($a1) /* 0897E8 80088BE8 460C6402 */ mul.s $f16, $f12, $f12 /* 0897EC 80088BEC 00001825 */ move $v1, $zero /* 0897F0 80088BF0 460A4081 */ sub.s $f2, $f8, $f10 /* 0897F4 80088BF4 46000482 */ mul.s $f18, $f0, $f0 /* 0897F8 80088BF8 00000000 */ nop /* 0897FC 80088BFC 46021102 */ mul.s $f4, $f2, $f2 /* 089800 80088C00 46049180 */ add.s $f6, $f18, $f4 /* 089804 80088C04 4610303E */ c.le.s $f6, $f16 /* 089808 80088C08 00000000 */ nop /* 08980C 80088C0C 45000002 */ bc1f .L80088C18 /* 089810 80088C10 00000000 */ nop /* 089814 80088C14 24030001 */ li $v1, 1 .L80088C18: /* 089818 80088C18 03E00008 */ jr $ra /* 08981C 80088C1C 00601025 */ move $v0, $v1 /* 089820 80088C20 000470C0 */ sll $t6, $a0, 3 /* 089824 80088C24 01C47023 */ subu $t6, $t6, $a0 /* 089828 80088C28 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08982C 80088C2C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 089830 80088C30 000E7140 */ sll $t6, $t6, 5 /* 089834 80088C34 AFA7000C */ sw $a3, 0xc($sp) /* 089838 80088C38 01CF1021 */ addu $v0, $t6, $t7 /* 08983C 80088C3C C4440004 */ lwc1 $f4, 4($v0) /* 089840 80088C40 C4A60000 */ lwc1 $f6, ($a1) /* 089844 80088C44 C448000C */ lwc1 $f8, 0xc($v0) /* 089848 80088C48 C4AA0008 */ lwc1 $f10, 8($a1) /* 08984C 80088C4C 46062001 */ sub.s $f0, $f4, $f6 /* 089850 80088C50 44867000 */ mtc1 $a2, $f14 /* 089854 80088C54 00001825 */ move $v1, $zero /* 089858 80088C58 460A4081 */ sub.s $f2, $f8, $f10 /* 08985C 80088C5C 46000402 */ mul.s $f16, $f0, $f0 /* 089860 80088C60 C7A6000C */ lwc1 $f6, 0xc($sp) /* 089864 80088C64 46021482 */ mul.s $f18, $f2, $f2 /* 089868 80088C68 46128300 */ add.s $f12, $f16, $f18 /* 08986C 80088C6C 460E7102 */ mul.s $f4, $f14, $f14 /* 089870 80088C70 460C203E */ c.le.s $f4, $f12 /* 089874 80088C74 00000000 */ nop /* 089878 80088C78 45000007 */ bc1f .L80088C98 /* 08987C 80088C7C 00000000 */ nop /* 089880 80088C80 46063202 */ mul.s $f8, $f6, $f6 /* 089884 80088C84 4608603E */ c.le.s $f12, $f8 /* 089888 80088C88 00000000 */ nop /* 08988C 80088C8C 45000002 */ bc1f .L80088C98 /* 089890 80088C90 00000000 */ nop /* 089894 80088C94 24030001 */ li $v1, 1 .L80088C98: /* 089898 80088C98 03E00008 */ jr $ra /* 08989C 80088C9C 00601025 */ move $v0, $v1 /* 0898A0 80088CA0 000470C0 */ sll $t6, $a0, 3 /* 0898A4 80088CA4 01C47023 */ subu $t6, $t6, $a0 /* 0898A8 80088CA8 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 0898AC 80088CAC 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 0898B0 80088CB0 000E7140 */ sll $t6, $t6, 5 /* 0898B4 80088CB4 01CF1021 */ addu $v0, $t6, $t7 /* 0898B8 80088CB8 C4440004 */ lwc1 $f4, 4($v0) /* 0898BC 80088CBC C4A60000 */ lwc1 $f6, ($a1) /* 0898C0 80088CC0 44867000 */ mtc1 $a2, $f14 /* 0898C4 80088CC4 C4480008 */ lwc1 $f8, 8($v0) /* 0898C8 80088CC8 46062001 */ sub.s $f0, $f4, $f6 /* 0898CC 80088CCC C4AA0004 */ lwc1 $f10, 4($a1) /* 0898D0 80088CD0 460E7102 */ mul.s $f4, $f14, $f14 /* 0898D4 80088CD4 C450000C */ lwc1 $f16, 0xc($v0) /* 0898D8 80088CD8 460A4081 */ sub.s $f2, $f8, $f10 /* 0898DC 80088CDC 46000182 */ mul.s $f6, $f0, $f0 /* 0898E0 80088CE0 C4B20008 */ lwc1 $f18, 8($a1) /* 0898E4 80088CE4 00001825 */ move $v1, $zero /* 0898E8 80088CE8 46021202 */ mul.s $f8, $f2, $f2 /* 0898EC 80088CEC 46128301 */ sub.s $f12, $f16, $f18 /* 0898F0 80088CF0 460C6402 */ mul.s $f16, $f12, $f12 /* 0898F4 80088CF4 46083280 */ add.s $f10, $f6, $f8 /* 0898F8 80088CF8 46105480 */ add.s $f18, $f10, $f16 /* 0898FC 80088CFC 4604903E */ c.le.s $f18, $f4 /* 089900 80088D00 00000000 */ nop /* 089904 80088D04 45000002 */ bc1f .L80088D10 /* 089908 80088D08 00000000 */ nop /* 08990C 80088D0C 24030001 */ li $v1, 1 .L80088D10: /* 089910 80088D10 03E00008 */ jr $ra /* 089914 80088D14 00601025 */ move $v0, $v1 glabel func_80088D18 /* 089918 80088D18 000470C0 */ sll $t6, $a0, 3 /* 08991C 80088D1C 01C47023 */ subu $t6, $t6, $a0 /* 089920 80088D20 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 089924 80088D24 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 089928 80088D28 000E7140 */ sll $t6, $t6, 5 /* 08992C 80088D2C 01CF1021 */ addu $v0, $t6, $t7 /* 089930 80088D30 C4440004 */ lwc1 $f4, 4($v0) /* 089934 80088D34 C4A60014 */ lwc1 $f6, 0x14($a1) /* 089938 80088D38 C448000C */ lwc1 $f8, 0xc($v0) /* 08993C 80088D3C C4AA001C */ lwc1 $f10, 0x1c($a1) /* 089940 80088D40 46062001 */ sub.s $f0, $f4, $f6 /* 089944 80088D44 945800C8 */ lhu $t8, 0xc8($v0) /* 089948 80088D48 00001825 */ move $v1, $zero /* 08994C 80088D4C 460A4081 */ sub.s $f2, $f8, $f10 /* 089950 80088D50 44988000 */ mtc1 $t8, $f16 /* 089954 80088D54 46000282 */ mul.s $f10, $f0, $f0 /* 089958 80088D58 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 08995C 80088D5C 468084A0 */ cvt.s.w $f18, $f16 /* 089960 80088D60 46021402 */ mul.s $f16, $f2, $f2 /* 089964 80088D64 07030005 */ bgezl $t8, .L80088D7C /* 089968 80088D68 C4A60070 */ lwc1 $f6, 0x70($a1) /* 08996C 80088D6C 44812000 */ mtc1 $at, $f4 /* 089970 80088D70 00000000 */ nop /* 089974 80088D74 46049480 */ add.s $f18, $f18, $f4 /* 089978 80088D78 C4A60070 */ lwc1 $f6, 0x70($a1) .L80088D7C: /* 08997C 80088D7C 46105100 */ add.s $f4, $f10, $f16 /* 089980 80088D80 46069300 */ add.s $f12, $f18, $f6 /* 089984 80088D84 460C6202 */ mul.s $f8, $f12, $f12 /* 089988 80088D88 4608203E */ c.le.s $f4, $f8 /* 08998C 80088D8C 00000000 */ nop /* 089990 80088D90 45000002 */ bc1f .L80088D9C /* 089994 80088D94 00000000 */ nop /* 089998 80088D98 24030001 */ li $v1, 1 .L80088D9C: /* 08999C 80088D9C 03E00008 */ jr $ra /* 0899A0 80088DA0 00601025 */ move $v0, $v1 glabel func_80088DA4 /* 0899A4 80088DA4 000470C0 */ sll $t6, $a0, 3 /* 0899A8 80088DA8 01C47023 */ subu $t6, $t6, $a0 /* 0899AC 80088DAC 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 0899B0 80088DB0 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 0899B4 80088DB4 000E7140 */ sll $t6, $t6, 5 /* 0899B8 80088DB8 01CF1021 */ addu $v0, $t6, $t7 /* 0899BC 80088DBC C4440004 */ lwc1 $f4, 4($v0) /* 0899C0 80088DC0 C4A60014 */ lwc1 $f6, 0x14($a1) /* 0899C4 80088DC4 C4480008 */ lwc1 $f8, 8($v0) /* 0899C8 80088DC8 C4AA0018 */ lwc1 $f10, 0x18($a1) /* 0899CC 80088DCC 46062001 */ sub.s $f0, $f4, $f6 /* 0899D0 80088DD0 C450000C */ lwc1 $f16, 0xc($v0) /* 0899D4 80088DD4 C4B2001C */ lwc1 $f18, 0x1c($a1) /* 0899D8 80088DD8 945800C8 */ lhu $t8, 0xc8($v0) /* 0899DC 80088DDC 460A4081 */ sub.s $f2, $f8, $f10 /* 0899E0 80088DE0 00001825 */ move $v1, $zero /* 0899E4 80088DE4 44982000 */ mtc1 $t8, $f4 /* 0899E8 80088DE8 46128301 */ sub.s $f12, $f16, $f18 /* 0899EC 80088DEC 46000482 */ mul.s $f18, $f0, $f0 /* 0899F0 80088DF0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 0899F4 80088DF4 468021A0 */ cvt.s.w $f6, $f4 /* 0899F8 80088DF8 46021102 */ mul.s $f4, $f2, $f2 /* 0899FC 80088DFC 07030005 */ bgezl $t8, .L80088E14 /* 089A00 80088E00 C4AA0070 */ lwc1 $f10, 0x70($a1) /* 089A04 80088E04 44814000 */ mtc1 $at, $f8 /* 089A08 80088E08 00000000 */ nop /* 089A0C 80088E0C 46083180 */ add.s $f6, $f6, $f8 /* 089A10 80088E10 C4AA0070 */ lwc1 $f10, 0x70($a1) .L80088E14: /* 089A14 80088E14 46049200 */ add.s $f8, $f18, $f4 /* 089A18 80088E18 460A3380 */ add.s $f14, $f6, $f10 /* 089A1C 80088E1C 460E7402 */ mul.s $f16, $f14, $f14 /* 089A20 80088E20 00000000 */ nop /* 089A24 80088E24 460C6182 */ mul.s $f6, $f12, $f12 /* 089A28 80088E28 46064280 */ add.s $f10, $f8, $f6 /* 089A2C 80088E2C 4610503E */ c.le.s $f10, $f16 /* 089A30 80088E30 00000000 */ nop /* 089A34 80088E34 45000002 */ bc1f .L80088E40 /* 089A38 80088E38 00000000 */ nop /* 089A3C 80088E3C 24030001 */ li $v1, 1 .L80088E40: /* 089A40 80088E40 03E00008 */ jr $ra /* 089A44 80088E44 00601025 */ move $v0, $v1 /* 089A48 80088E48 000470C0 */ sll $t6, $a0, 3 /* 089A4C 80088E4C 01C47023 */ subu $t6, $t6, $a0 /* 089A50 80088E50 000E7140 */ sll $t6, $t6, 5 /* 089A54 80088E54 3C018016 */ lui $at, %hi(D_80165C20) /* 089A58 80088E58 002E0821 */ addu $at, $at, $t6 /* 089A5C 80088E5C C4245C20 */ lwc1 $f4, %lo(D_80165C20)($at) /* 089A60 80088E60 C4A60018 */ lwc1 $f6, 0x18($a1) /* 089A64 80088E64 44866000 */ mtc1 $a2, $f12 /* 089A68 80088E68 00001825 */ move $v1, $zero /* 089A6C 80088E6C 46062001 */ sub.s $f0, $f4, $f6 /* 089A70 80088E70 460C6202 */ mul.s $f8, $f12, $f12 /* 089A74 80088E74 00000000 */ nop /* 089A78 80088E78 46000282 */ mul.s $f10, $f0, $f0 /* 089A7C 80088E7C 4608503E */ c.le.s $f10, $f8 /* 089A80 80088E80 00000000 */ nop /* 089A84 80088E84 45000002 */ bc1f .L80088E90 /* 089A88 80088E88 00000000 */ nop /* 089A8C 80088E8C 24030001 */ li $v1, 1 .L80088E90: /* 089A90 80088E90 03E00008 */ jr $ra /* 089A94 80088E94 00601025 */ move $v0, $v1 glabel func_80088E98 /* 089A98 80088E98 000470C0 */ sll $t6, $a0, 3 /* 089A9C 80088E9C 01C47023 */ subu $t6, $t6, $a0 /* 089AA0 80088EA0 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 089AA4 80088EA4 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 089AA8 80088EA8 000E7140 */ sll $t6, $t6, 5 /* 089AAC 80088EAC 01CF1021 */ addu $v0, $t6, $t7 /* 089AB0 80088EB0 AFA60008 */ sw $a2, 8($sp) /* 089AB4 80088EB4 C4A60014 */ lwc1 $f6, 0x14($a1) /* 089AB8 80088EB8 C4440004 */ lwc1 $f4, 4($v0) /* 089ABC 80088EBC C4B2001C */ lwc1 $f18, 0x1c($a1) /* 089AC0 80088EC0 C450000C */ lwc1 $f16, 0xc($v0) /* 089AC4 80088EC4 945800C8 */ lhu $t8, 0xc8($v0) /* 089AC8 80088EC8 46062001 */ sub.s $f0, $f4, $f6 /* 089ACC 80088ECC C4AA0018 */ lwc1 $f10, 0x18($a1) /* 089AD0 80088ED0 C4480008 */ lwc1 $f8, 8($v0) /* 089AD4 80088ED4 44982000 */ mtc1 $t8, $f4 /* 089AD8 80088ED8 46128301 */ sub.s $f12, $f16, $f18 /* 089ADC 80088EDC 44808000 */ mtc1 $zero, $f16 /* 089AE0 80088EE0 00001825 */ move $v1, $zero /* 089AE4 80088EE4 460A4081 */ sub.s $f2, $f8, $f10 /* 089AE8 80088EE8 07010005 */ bgez $t8, .L80088F00 /* 089AEC 80088EEC 468021A0 */ cvt.s.w $f6, $f4 /* 089AF0 80088EF0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 089AF4 80088EF4 44814000 */ mtc1 $at, $f8 /* 089AF8 80088EF8 00000000 */ nop /* 089AFC 80088EFC 46083180 */ add.s $f6, $f6, $f8 .L80088F00: /* 089B00 80088F00 4610103C */ c.lt.s $f2, $f16 /* 089B04 80088F04 46000102 */ mul.s $f4, $f0, $f0 /* 089B08 80088F08 C4AA0070 */ lwc1 $f10, 0x70($a1) /* 089B0C 80088F0C 460C6202 */ mul.s $f8, $f12, $f12 /* 089B10 80088F10 45000002 */ bc1f .L80088F1C /* 089B14 80088F14 460A3380 */ add.s $f14, $f6, $f10 /* 089B18 80088F18 46001087 */ neg.s $f2, $f2 .L80088F1C: /* 089B1C 80088F1C 460E7482 */ mul.s $f18, $f14, $f14 /* 089B20 80088F20 46082180 */ add.s $f6, $f4, $f8 /* 089B24 80088F24 C7AA0008 */ lwc1 $f10, 8($sp) /* 089B28 80088F28 4612303E */ c.le.s $f6, $f18 /* 089B2C 80088F2C 00000000 */ nop /* 089B30 80088F30 45000006 */ bc1f .L80088F4C /* 089B34 80088F34 00000000 */ nop /* 089B38 80088F38 460A103E */ c.le.s $f2, $f10 /* 089B3C 80088F3C 00000000 */ nop /* 089B40 80088F40 45000002 */ bc1f .L80088F4C /* 089B44 80088F44 00000000 */ nop /* 089B48 80088F48 24030001 */ li $v1, 1 .L80088F4C: /* 089B4C 80088F4C 03E00008 */ jr $ra /* 089B50 80088F50 00601025 */ move $v0, $v1 glabel func_80088F54 /* 089B54 80088F54 000470C0 */ sll $t6, $a0, 3 /* 089B58 80088F58 01C47023 */ subu $t6, $t6, $a0 /* 089B5C 80088F5C 000E7140 */ sll $t6, $t6, 5 /* 089B60 80088F60 3C018016 */ lui $at, %hi(D_80165C20) /* 089B64 80088F64 002E0821 */ addu $at, $at, $t6 /* 089B68 80088F68 C4245C20 */ lwc1 $f4, %lo(D_80165C20)($at) /* 089B6C 80088F6C C4A60074 */ lwc1 $f6, 0x74($a1) /* 089B70 80088F70 44804000 */ mtc1 $zero, $f8 /* 089B74 80088F74 46062081 */ sub.s $f2, $f4, $f6 /* 089B78 80088F78 4608103C */ c.lt.s $f2, $f8 /* 089B7C 80088F7C 00000000 */ nop /* 089B80 80088F80 45000002 */ bc1f .L80088F8C /* 089B84 80088F84 00000000 */ nop /* 089B88 80088F88 46001087 */ neg.s $f2, $f2 .L80088F8C: /* 089B8C 80088F8C 03E00008 */ jr $ra /* 089B90 80088F90 46001006 */ mov.s $f0, $f2 /* 089B94 80088F94 000470C0 */ sll $t6, $a0, 3 /* 089B98 80088F98 01C47023 */ subu $t6, $t6, $a0 /* 089B9C 80088F9C 000E7140 */ sll $t6, $t6, 5 /* 089BA0 80088FA0 3C018016 */ lui $at, %hi(D_80165C20) /* 089BA4 80088FA4 002E0821 */ addu $at, $at, $t6 /* 089BA8 80088FA8 C4245C20 */ lwc1 $f4, %lo(D_80165C20)($at) /* 089BAC 80088FAC C4A60074 */ lwc1 $f6, 0x74($a1) /* 089BB0 80088FB0 44804000 */ mtc1 $zero, $f8 /* 089BB4 80088FB4 44866000 */ mtc1 $a2, $f12 /* 089BB8 80088FB8 46062001 */ sub.s $f0, $f4, $f6 /* 089BBC 80088FBC 00001825 */ move $v1, $zero /* 089BC0 80088FC0 4608003C */ c.lt.s $f0, $f8 /* 089BC4 80088FC4 00000000 */ nop /* 089BC8 80088FC8 45020003 */ bc1fl .L80088FD8 /* 089BCC 80088FCC 460C003E */ c.le.s $f0, $f12 /* 089BD0 80088FD0 46000007 */ neg.s $f0, $f0 /* 089BD4 80088FD4 460C003E */ c.le.s $f0, $f12 .L80088FD8: /* 089BD8 80088FD8 00000000 */ nop /* 089BDC 80088FDC 45000002 */ bc1f .L80088FE8 /* 089BE0 80088FE0 00000000 */ nop /* 089BE4 80088FE4 24030001 */ li $v1, 1 .L80088FE8: /* 089BE8 80088FE8 03E00008 */ jr $ra /* 089BEC 80088FEC 00601025 */ move $v0, $v1 glabel func_80088FF0 /* 089BF0 80088FF0 44800000 */ mtc1 $zero, $f0 /* 089BF4 80088FF4 00000000 */ nop /* 089BF8 80088FF8 E480008C */ swc1 $f0, 0x8c($a0) /* 089BFC 80088FFC E480009C */ swc1 $f0, 0x9c($a0) /* 089C00 80089000 E4800034 */ swc1 $f0, 0x34($a0) /* 089C04 80089004 03E00008 */ jr $ra /* 089C08 80089008 E480003C */ swc1 $f0, 0x3c($a0) /* 089C0C 8008900C 44800000 */ mtc1 $zero, $f0 /* 089C10 80089010 00000000 */ nop /* 089C14 80089014 E480008C */ swc1 $f0, 0x8c($a0) /* 089C18 80089018 03E00008 */ jr $ra /* 089C1C 8008901C E480009C */ swc1 $f0, 0x9c($a0) glabel func_80089020 /* 089C20 80089020 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 089C24 80089024 AFBF0014 */ sw $ra, 0x14($sp) /* 089C28 80089028 44806000 */ mtc1 $zero, $f12 /* 089C2C 8008902C C4A00000 */ lwc1 $f0, ($a1) /* 089C30 80089030 000470C0 */ sll $t6, $a0, 3 /* 089C34 80089034 01C47023 */ subu $t6, $t6, $a0 /* 089C38 80089038 000E7100 */ sll $t6, $t6, 4 /* 089C3C 8008903C 4600603E */ c.le.s $f12, $f0 /* 089C40 80089040 01C47023 */ subu $t6, $t6, $a0 /* 089C44 80089044 000E7080 */ sll $t6, $t6, 2 /* 089C48 80089048 3C0F800E */ lui $t7, %hi(D_800DC4DC) # $t7, 0x800e /* 089C4C 8008904C 8DEFC4DC */ lw $t7, %lo(D_800DC4DC)($t7) /* 089C50 80089050 01C47023 */ subu $t6, $t6, $a0 /* 089C54 80089054 000E70C0 */ sll $t6, $t6, 3 /* 089C58 80089058 00A03825 */ move $a3, $a1 /* 089C5C 8008905C 45000003 */ bc1f .L8008906C /* 089C60 80089060 01CF1021 */ addu $v0, $t6, $t7 /* 089C64 80089064 10000002 */ b .L80089070 /* 089C68 80089068 46000086 */ mov.s $f2, $f0 .L8008906C: /* 089C6C 8008906C 46000087 */ neg.s $f2, $f0 .L80089070: /* 089C70 80089070 8C5800BC */ lw $t8, 0xbc($v0) /* 089C74 80089074 44056000 */ mfc1 $a1, $f12 /* 089C78 80089078 3C08800E */ lui $t0, %hi(gCurrentCourseId) # $t0, 0x800e /* 089C7C 8008907C 331900C0 */ andi $t9, $t8, 0xc0 /* 089C80 80089080 1320004A */ beqz $t9, .L800891AC /* 089C84 80089084 3C09800E */ lui $t1, %hi(gCurrentCourseId) # $t1, 0x800e /* 089C88 80089088 8508C5A0 */ lh $t0, %lo(gCurrentCourseId)($t0) /* 089C8C 8008908C 2401000C */ li $at, 12 /* 089C90 80089090 15010023 */ bne $t0, $at, .L80089120 /* 089C94 80089094 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 /* 089C98 80089098 44812800 */ mtc1 $at, $f5 /* 089C9C 8008909C 44802000 */ mtc1 $zero, $f4 /* 089CA0 800890A0 46001021 */ cvt.d.s $f0, $f2 /* 089CA4 800890A4 3C014000 */ li $at, 0x40000000 # 2.000000 /* 089CA8 800890A8 4624003E */ c.le.d $f0, $f4 /* 089CAC 800890AC 00000000 */ nop /* 089CB0 800890B0 45020005 */ bc1fl .L800890C8 /* 089CB4 800890B4 44813800 */ mtc1 $at, $f7 /* 089CB8 800890B8 3C01800F */ lui $at, %hi(D_800EF4A0) # 0x800F0000 # -0.000000 /* 089CBC 800890BC 10000081 */ b .L800892C4 /* 089CC0 800890C0 C420F4A0 */ lwc1 $f0, %lo(D_800EF4A0)($at) /* 089CC4 800890C4 44813800 */ mtc1 $at, $f7 .L800890C8: /* 089CC8 800890C8 44803000 */ mtc1 $zero, $f6 /* 089CCC 800890CC 3C014010 */ li $at, 0x40100000 # 2.250000 /* 089CD0 800890D0 4626003E */ c.le.d $f0, $f6 /* 089CD4 800890D4 00000000 */ nop /* 089CD8 800890D8 45020005 */ bc1fl .L800890F0 /* 089CDC 800890DC 44814800 */ mtc1 $at, $f9 /* 089CE0 800890E0 3C01800F */ lui $at, %hi(D_800EF4A4) # 0x800F0000 # -0.000000 /* 089CE4 800890E4 10000077 */ b .L800892C4 /* 089CE8 800890E8 C420F4A4 */ lwc1 $f0, %lo(D_800EF4A4)($at) /* 089CEC 800890EC 44814800 */ mtc1 $at, $f9 .L800890F0: /* 089CF0 800890F0 44804000 */ mtc1 $zero, $f8 /* 089CF4 800890F4 3C013E80 */ li $at, 0x3E800000 # 0.250000 /* 089CF8 800890F8 4628003E */ c.le.d $f0, $f8 /* 089CFC 800890FC 00000000 */ nop /* 089D00 80089100 45020005 */ bc1fl .L80089118 /* 089D04 80089104 44810000 */ mtc1 $at, $f0 /* 089D08 80089108 3C01800F */ lui $at, %hi(D_800EF4A8) # 0x800F0000 # -0.000000 /* 089D0C 8008910C 1000006D */ b .L800892C4 /* 089D10 80089110 C420F4A8 */ lwc1 $f0, %lo(D_800EF4A8)($at) /* 089D14 80089114 44810000 */ mtc1 $at, $f0 .L80089118: /* 089D18 80089118 1000006B */ b .L800892C8 /* 089D1C 8008911C 44060000 */ mfc1 $a2, $f0 .L80089120: /* 089D20 80089120 3C014000 */ li $at, 0x40000000 # 2.000000 /* 089D24 80089124 44815800 */ mtc1 $at, $f11 /* 089D28 80089128 44805000 */ mtc1 $zero, $f10 /* 089D2C 8008912C 46001021 */ cvt.d.s $f0, $f2 /* 089D30 80089130 3C014008 */ li $at, 0x40080000 # 2.125000 /* 089D34 80089134 462A003E */ c.le.d $f0, $f10 /* 089D38 80089138 00000000 */ nop /* 089D3C 8008913C 45020005 */ bc1fl .L80089154 /* 089D40 80089140 44818800 */ mtc1 $at, $f17 /* 089D44 80089144 3C01800F */ lui $at, %hi(D_800EF4AC) # 0x800F0000 # -0.000000 /* 089D48 80089148 1000005E */ b .L800892C4 /* 089D4C 8008914C C420F4AC */ lwc1 $f0, %lo(D_800EF4AC)($at) /* 089D50 80089150 44818800 */ mtc1 $at, $f17 .L80089154: /* 089D54 80089154 44808000 */ mtc1 $zero, $f16 /* 089D58 80089158 3C014010 */ li $at, 0x40100000 # 2.250000 /* 089D5C 8008915C 4630003E */ c.le.d $f0, $f16 /* 089D60 80089160 00000000 */ nop /* 089D64 80089164 45020005 */ bc1fl .L8008917C /* 089D68 80089168 44819800 */ mtc1 $at, $f19 /* 089D6C 8008916C 3C01800F */ lui $at, %hi(D_800EF4B0) # 0x800F0000 # -0.000000 /* 089D70 80089170 10000054 */ b .L800892C4 /* 089D74 80089174 C420F4B0 */ lwc1 $f0, %lo(D_800EF4B0)($at) /* 089D78 80089178 44819800 */ mtc1 $at, $f19 .L8008917C: /* 089D7C 8008917C 44809000 */ mtc1 $zero, $f18 /* 089D80 80089180 3C013E80 */ li $at, 0x3E800000 # 0.250000 /* 089D84 80089184 4632003E */ c.le.d $f0, $f18 /* 089D88 80089188 00000000 */ nop /* 089D8C 8008918C 45020005 */ bc1fl .L800891A4 /* 089D90 80089190 44810000 */ mtc1 $at, $f0 /* 089D94 80089194 3C01800F */ lui $at, %hi(D_800EF4B4) # 0x800F0000 # -0.000000 /* 089D98 80089198 1000004A */ b .L800892C4 /* 089D9C 8008919C C420F4B4 */ lwc1 $f0, %lo(D_800EF4B4)($at) /* 089DA0 800891A0 44810000 */ mtc1 $at, $f0 .L800891A4: /* 089DA4 800891A4 10000048 */ b .L800892C8 /* 089DA8 800891A8 44060000 */ mfc1 $a2, $f0 .L800891AC: /* 089DAC 800891AC 8529C5A0 */ lh $t1, %lo(gCurrentCourseId)($t1) /* 089DB0 800891B0 2401000C */ li $at, 12 /* 089DB4 800891B4 15210022 */ bne $t1, $at, .L80089240 /* 089DB8 800891B8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 /* 089DBC 800891BC 44812800 */ mtc1 $at, $f5 /* 089DC0 800891C0 44802000 */ mtc1 $zero, $f4 /* 089DC4 800891C4 46001021 */ cvt.d.s $f0, $f2 /* 089DC8 800891C8 3C014000 */ li $at, 0x40000000 # 2.000000 /* 089DCC 800891CC 4624003E */ c.le.d $f0, $f4 /* 089DD0 800891D0 00000000 */ nop /* 089DD4 800891D4 45020005 */ bc1fl .L800891EC /* 089DD8 800891D8 44813800 */ mtc1 $at, $f7 /* 089DDC 800891DC 3C01800F */ lui $at, %hi(D_800EF4B8) # 0x800F0000 # -0.000000 /* 089DE0 800891E0 10000038 */ b .L800892C4 /* 089DE4 800891E4 C420F4B8 */ lwc1 $f0, %lo(D_800EF4B8)($at) /* 089DE8 800891E8 44813800 */ mtc1 $at, $f7 .L800891EC: /* 089DEC 800891EC 44803000 */ mtc1 $zero, $f6 /* 089DF0 800891F0 3C014010 */ li $at, 0x40100000 # 2.250000 /* 089DF4 800891F4 4626003E */ c.le.d $f0, $f6 /* 089DF8 800891F8 00000000 */ nop /* 089DFC 800891FC 45020005 */ bc1fl .L80089214 /* 089E00 80089200 44814800 */ mtc1 $at, $f9 /* 089E04 80089204 3C01800F */ lui $at, %hi(D_800EF4BC) # 0x800F0000 # -0.000000 /* 089E08 80089208 1000002E */ b .L800892C4 /* 089E0C 8008920C C420F4BC */ lwc1 $f0, %lo(D_800EF4BC)($at) /* 089E10 80089210 44814800 */ mtc1 $at, $f9 .L80089214: /* 089E14 80089214 44804000 */ mtc1 $zero, $f8 /* 089E18 80089218 3C01800F */ lui $at, %hi(D_800EF4C4) /* 089E1C 8008921C 4628003E */ c.le.d $f0, $f8 /* 089E20 80089220 00000000 */ nop /* 089E24 80089224 45000004 */ bc1f .L80089238 /* 089E28 80089228 00000000 */ nop /* 089E2C 8008922C 3C01800F */ lui $at, %hi(D_800EF4C0) # $at, 0x800f /* 089E30 80089230 10000024 */ b .L800892C4 /* 089E34 80089234 C420F4C0 */ lwc1 $f0, %lo(D_800EF4C0)($at) .L80089238: /* 089E38 80089238 10000022 */ b .L800892C4 /* 089E3C 8008923C C420F4C4 */ lwc1 $f0, %lo(D_800EF4C4)($at) .L80089240: /* 089E40 80089240 3C014000 */ li $at, 0x40000000 # 2.000000 /* 089E44 80089244 44815800 */ mtc1 $at, $f11 /* 089E48 80089248 44805000 */ mtc1 $zero, $f10 /* 089E4C 8008924C 46001021 */ cvt.d.s $f0, $f2 /* 089E50 80089250 3C014008 */ li $at, 0x40080000 # 2.125000 /* 089E54 80089254 462A003E */ c.le.d $f0, $f10 /* 089E58 80089258 00000000 */ nop /* 089E5C 8008925C 45020005 */ bc1fl .L80089274 /* 089E60 80089260 44818800 */ mtc1 $at, $f17 /* 089E64 80089264 3C01800F */ lui $at, %hi(D_800EF4C8) # 0x800F0000 # -0.000000 /* 089E68 80089268 10000016 */ b .L800892C4 /* 089E6C 8008926C C420F4C8 */ lwc1 $f0, %lo(D_800EF4C8)($at) /* 089E70 80089270 44818800 */ mtc1 $at, $f17 .L80089274: /* 089E74 80089274 44808000 */ mtc1 $zero, $f16 /* 089E78 80089278 3C014010 */ li $at, 0x40100000 # 2.250000 /* 089E7C 8008927C 4630003E */ c.le.d $f0, $f16 /* 089E80 80089280 00000000 */ nop /* 089E84 80089284 45020005 */ bc1fl .L8008929C /* 089E88 80089288 44819800 */ mtc1 $at, $f19 /* 089E8C 8008928C 3C01800F */ lui $at, %hi(D_800EF4CC) # 0x800F0000 # -0.000000 /* 089E90 80089290 1000000C */ b .L800892C4 /* 089E94 80089294 C420F4CC */ lwc1 $f0, %lo(D_800EF4CC)($at) /* 089E98 80089298 44819800 */ mtc1 $at, $f19 .L8008929C: /* 089E9C 8008929C 44809000 */ mtc1 $zero, $f18 /* 089EA0 800892A0 3C01800F */ lui $at, %hi(D_800EF4D0) # 0x800f /* 089EA4 800892A4 4632003E */ c.le.d $f0, $f18 /* 089EA8 800892A8 00000000 */ nop /* 089EAC 800892AC 45000004 */ bc1f .L800892C0 /* 089EB0 800892B0 00000000 */ nop /* 089EB4 800892B4 3C01800F */ lui $at, %hi(D_800EF4D4) # $at, 0x800f /* 089EB8 800892B8 10000002 */ b .L800892C4 /* 089EBC 800892BC C420F4D0 */ lwc1 $f0, %lo(D_800EF4D0)($at) .L800892C0: /* 089EC0 800892C0 C420F4D4 */ lwc1 $f0, %lo(D_800EF4D4)($at) .L800892C4: /* 089EC4 800892C4 44060000 */ mfc1 $a2, $f0 .L800892C8: /* 089EC8 800892C8 0C0104EE */ jal func_800413B8 /* 089ECC 800892CC 00E02025 */ move $a0, $a3 /* 089ED0 800892D0 8FBF0014 */ lw $ra, 0x14($sp) /* 089ED4 800892D4 27BD0018 */ addiu $sp, $sp, 0x18 /* 089ED8 800892D8 03E00008 */ jr $ra /* 089EDC 800892DC 00000000 */ nop glabel func_800892E0 /* 089EE0 800892E0 3C0F8019 */ lui $t7, %hi(D_8018CE10) # $t7, 0x8019 /* 089EE4 800892E4 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 089EE8 800892E8 25EFCE10 */ addiu $t7, %lo(D_8018CE10) # addiu $t7, $t7, -0x31f0 /* 089EEC 800892EC 00047140 */ sll $t6, $a0, 5 /* 089EF0 800892F0 AFBF0014 */ sw $ra, 0x14($sp) /* 089EF4 800892F4 01CF1021 */ addu $v0, $t6, $t7 /* 089EF8 800892F8 24450004 */ addiu $a1, $v0, 4 /* 089EFC 800892FC AFA2001C */ sw $v0, 0x1c($sp) /* 089F00 80089300 0C022408 */ jal func_80089020 /* 089F04 80089304 AFA40020 */ sw $a0, 0x20($sp) /* 089F08 80089308 8FA2001C */ lw $v0, 0x1c($sp) /* 089F0C 8008930C 8FA40020 */ lw $a0, 0x20($sp) /* 089F10 80089310 0C022408 */ jal func_80089020 /* 089F14 80089314 2445000C */ addiu $a1, $v0, 0xc /* 089F18 80089318 8FA2001C */ lw $v0, 0x1c($sp) /* 089F1C 8008931C 8043001E */ lb $v1, 0x1e($v0) /* 089F20 80089320 18600002 */ blez $v1, .L8008932C /* 089F24 80089324 2478FFFF */ addiu $t8, $v1, -1 /* 089F28 80089328 A058001E */ sb $t8, 0x1e($v0) .L8008932C: /* 089F2C 8008932C 8FBF0014 */ lw $ra, 0x14($sp) /* 089F30 80089330 27BD0020 */ addiu $sp, $sp, 0x20 /* 089F34 80089334 03E00008 */ jr $ra /* 089F38 80089338 00000000 */ nop glabel func_8008933C /* 089F3C 8008933C 3C0E800E */ lui $t6, %hi(D_800DC4DC) # $t6, 0x800e /* 089F40 80089340 8DCEC4DC */ lw $t6, %lo(D_800DC4DC)($t6) /* 089F44 80089344 24010DD8 */ li $at, 3544 /* 089F48 80089348 3C198019 */ lui $t9, %hi(D_8018CE10) # $t9, 0x8019 /* 089F4C 8008934C 008E1023 */ subu $v0, $a0, $t6 /* 089F50 80089350 0041001A */ div $zero, $v0, $at /* 089F54 80089354 00007812 */ mflo $t7 /* 089F58 80089358 000FC140 */ sll $t8, $t7, 5 /* 089F5C 8008935C 2739CE10 */ addiu $t9, %lo(D_8018CE10) # addiu $t9, $t9, -0x31f0 /* 089F60 80089360 03191821 */ addu $v1, $t8, $t9 /* 089F64 80089364 8068001E */ lb $t0, 0x1e($v1) /* 089F68 80089368 44808000 */ mtc1 $zero, $f16 /* 089F6C 8008936C 44867000 */ mtc1 $a2, $f14 /* 089F70 80089370 44876000 */ mtc1 $a3, $f12 /* 089F74 80089374 1500003D */ bnez $t0, .L8008946C /* 089F78 80089378 46008086 */ mov.s $f2, $f16 /* 089F7C 8008937C 94890046 */ lhu $t1, 0x46($a0) /* 089F80 80089380 8C8B00BC */ lw $t3, 0xbc($a0) /* 089F84 80089384 000570C0 */ sll $t6, $a1, 3 /* 089F88 80089388 01C57023 */ subu $t6, $t6, $a1 /* 089F8C 8008938C 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 089F90 80089390 352A0002 */ ori $t2, $t1, 2 /* 089F94 80089394 356C8000 */ ori $t4, $t3, 0x8000 /* 089F98 80089398 A48A0046 */ sh $t2, 0x46($a0) /* 089F9C 8008939C AC8C00BC */ sw $t4, 0xbc($a0) /* 089FA0 800893A0 240D0004 */ li $t5, 4 /* 089FA4 800893A4 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 089FA8 800893A8 000E7140 */ sll $t6, $t6, 5 /* 089FAC 800893AC A06D001E */ sb $t5, 0x1e($v1) /* 089FB0 800893B0 01CF1021 */ addu $v0, $t6, $t7 /* 089FB4 800893B4 C4460004 */ lwc1 $f6, 4($v0) /* 089FB8 800893B8 C4840014 */ lwc1 $f4, 0x14($a0) /* 089FBC 800893BC C4420038 */ lwc1 $f2, 0x38($v0) /* 089FC0 800893C0 46062201 */ sub.s $f8, $f4, $f6 /* 089FC4 800893C4 46081002 */ mul.s $f0, $f2, $f8 /* 089FC8 800893C8 4600803E */ c.le.s $f16, $f0 /* 089FCC 800893CC 00000000 */ nop /* 089FD0 800893D0 45020009 */ bc1fl .L800893F8 /* 089FD4 800893D4 C4920034 */ lwc1 $f18, 0x34($a0) /* 089FD8 800893D8 C4920034 */ lwc1 $f18, 0x34($a0) /* 089FDC 800893DC 460C1282 */ mul.s $f10, $f2, $f12 /* 089FE0 800893E0 46009107 */ neg.s $f4, $f18 /* 089FE4 800893E4 460E2182 */ mul.s $f6, $f4, $f14 /* 089FE8 800893E8 46065200 */ add.s $f8, $f10, $f6 /* 089FEC 800893EC 10000005 */ b .L80089404 /* 089FF0 800893F0 E4680004 */ swc1 $f8, 4($v1) /* 089FF4 800893F4 C4920034 */ lwc1 $f18, 0x34($a0) .L800893F8: /* 089FF8 800893F8 46009107 */ neg.s $f4, $f18 /* 089FFC 800893FC 460E2282 */ mul.s $f10, $f4, $f14 /* 08A000 80089400 E46A0004 */ swc1 $f10, 4($v1) .L80089404: /* 08A004 80089404 C486001C */ lwc1 $f6, 0x1c($a0) /* 08A008 80089408 C448000C */ lwc1 $f8, 0xc($v0) /* 08A00C 8008940C C4420040 */ lwc1 $f2, 0x40($v0) /* 08A010 80089410 46083481 */ sub.s $f18, $f6, $f8 /* 08A014 80089414 46121002 */ mul.s $f0, $f2, $f18 /* 08A018 80089418 4600803E */ c.le.s $f16, $f0 /* 08A01C 8008941C 00000000 */ nop /* 08A020 80089420 45020009 */ bc1fl .L80089448 /* 08A024 80089424 C48A003C */ lwc1 $f10, 0x3c($a0) /* 08A028 80089428 C48A003C */ lwc1 $f10, 0x3c($a0) /* 08A02C 8008942C 460C1102 */ mul.s $f4, $f2, $f12 /* 08A030 80089430 46005187 */ neg.s $f6, $f10 /* 08A034 80089434 460E3202 */ mul.s $f8, $f6, $f14 /* 08A038 80089438 46082480 */ add.s $f18, $f4, $f8 /* 08A03C 8008943C 10000005 */ b .L80089454 /* 08A040 80089440 E472000C */ swc1 $f18, 0xc($v1) /* 08A044 80089444 C48A003C */ lwc1 $f10, 0x3c($a0) .L80089448: /* 08A048 80089448 46005187 */ neg.s $f6, $f10 /* 08A04C 8008944C 460E3102 */ mul.s $f4, $f6, $f14 /* 08A050 80089450 E464000C */ swc1 $f4, 0xc($v1) .L80089454: /* 08A054 80089454 C460000C */ lwc1 $f0, 0xc($v1) /* 08A058 80089458 C46C0004 */ lwc1 $f12, 4($v1) /* 08A05C 8008945C 46000202 */ mul.s $f8, $f0, $f0 /* 08A060 80089460 00000000 */ nop /* 08A064 80089464 460C6482 */ mul.s $f18, $f12, $f12 /* 08A068 80089468 46124080 */ add.s $f2, $f8, $f18 .L8008946C: /* 08A06C 8008946C 03E00008 */ jr $ra /* 08A070 80089470 46001006 */ mov.s $f0, $f2 glabel func_80089474 /* 08A074 80089474 000578C0 */ sll $t7, $a1, 3 /* 08A078 80089478 01E57823 */ subu $t7, $t7, $a1 /* 08A07C 8008947C 000F7900 */ sll $t7, $t7, 4 /* 08A080 80089480 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08A084 80089484 01E57823 */ subu $t7, $t7, $a1 /* 08A088 80089488 3C18800E */ lui $t8, %hi(D_800DC4DC) # $t8, 0x800e /* 08A08C 8008948C 8F18C4DC */ lw $t8, %lo(D_800DC4DC)($t8) /* 08A090 80089490 000F7880 */ sll $t7, $t7, 2 /* 08A094 80089494 01E57823 */ subu $t7, $t7, $a1 /* 08A098 80089498 000F78C0 */ sll $t7, $t7, 3 /* 08A09C 8008949C AFBF0014 */ sw $ra, 0x14($sp) /* 08A0A0 800894A0 AFA50024 */ sw $a1, 0x24($sp) /* 08A0A4 800894A4 01F8C821 */ addu $t9, $t7, $t8 /* 08A0A8 800894A8 AFA40020 */ sw $a0, 0x20($sp) /* 08A0AC 800894AC AFA60028 */ sw $a2, 0x28($sp) /* 08A0B0 800894B0 AFA7002C */ sw $a3, 0x2c($sp) /* 08A0B4 800894B4 AFB90018 */ sw $t9, 0x18($sp) /* 08A0B8 800894B8 0C01C88F */ jal func_8007223C /* 08A0BC 800894BC 3C050400 */ lui $a1, 0x400 /* 08A0C0 800894C0 50400004 */ beql $v0, $zero, .L800894D4 /* 08A0C4 800894C4 8FA40018 */ lw $a0, 0x18($sp) /* 08A0C8 800894C8 0C01C860 */ jal func_80072180 /* 08A0CC 800894CC 00000000 */ nop /* 08A0D0 800894D0 8FA40018 */ lw $a0, 0x18($sp) .L800894D4: /* 08A0D4 800894D4 8FA50020 */ lw $a1, 0x20($sp) /* 08A0D8 800894D8 8FA60028 */ lw $a2, 0x28($sp) /* 08A0DC 800894DC 0C0224CF */ jal func_8008933C /* 08A0E0 800894E0 8FA7002C */ lw $a3, 0x2c($sp) /* 08A0E4 800894E4 3C014010 */ li $at, 0x40100000 # 2.250000 /* 08A0E8 800894E8 44813800 */ mtc1 $at, $f7 /* 08A0EC 800894EC 44803000 */ mtc1 $zero, $f6 /* 08A0F0 800894F0 46000121 */ cvt.d.s $f4, $f0 /* 08A0F4 800894F4 8FA80018 */ lw $t0, 0x18($sp) /* 08A0F8 800894F8 4624303E */ c.le.d $f6, $f4 /* 08A0FC 800894FC 00000000 */ nop /* 08A100 80089500 4502000A */ bc1fl .L8008952C /* 08A104 80089504 8FBF0014 */ lw $ra, 0x14($sp) /* 08A108 80089508 95090000 */ lhu $t1, ($t0) /* 08A10C 8008950C 24011000 */ li $at, 4096 /* 08A110 80089510 93A40027 */ lbu $a0, 0x27($sp) /* 08A114 80089514 312A1000 */ andi $t2, $t1, 0x1000 /* 08A118 80089518 51410004 */ beql $t2, $at, .L8008952C /* 08A11C 8008951C 8FBF0014 */ lw $ra, 0x14($sp) /* 08A120 80089520 0C032418 */ jal func_800C9060 /* 08A124 80089524 8FA50030 */ lw $a1, 0x30($sp) /* 08A128 80089528 8FBF0014 */ lw $ra, 0x14($sp) .L8008952C: /* 08A12C 8008952C 27BD0020 */ addiu $sp, $sp, 0x20 /* 08A130 80089530 03E00008 */ jr $ra /* 08A134 80089534 00000000 */ nop /* 08A138 80089538 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08A13C 8008953C AFA50024 */ sw $a1, 0x24($sp) /* 08A140 80089540 8FAE0024 */ lw $t6, 0x24($sp) /* 08A144 80089544 3C18800E */ lui $t8, %hi(D_800DC4DC) # $t8, 0x800e /* 08A148 80089548 44866000 */ mtc1 $a2, $f12 /* 08A14C 8008954C 000E78C0 */ sll $t7, $t6, 3 /* 08A150 80089550 01EE7823 */ subu $t7, $t7, $t6 /* 08A154 80089554 000F7900 */ sll $t7, $t7, 4 /* 08A158 80089558 01EE7823 */ subu $t7, $t7, $t6 /* 08A15C 8008955C 44877000 */ mtc1 $a3, $f14 /* 08A160 80089560 8F18C4DC */ lw $t8, %lo(D_800DC4DC)($t8) /* 08A164 80089564 000F7880 */ sll $t7, $t7, 2 /* 08A168 80089568 01EE7823 */ subu $t7, $t7, $t6 /* 08A16C 8008956C 00802825 */ move $a1, $a0 /* 08A170 80089570 AFA40020 */ sw $a0, 0x20($sp) /* 08A174 80089574 000F78C0 */ sll $t7, $t7, 3 /* 08A178 80089578 AFBF0014 */ sw $ra, 0x14($sp) /* 08A17C 8008957C 44066000 */ mfc1 $a2, $f12 /* 08A180 80089580 01F82021 */ addu $a0, $t7, $t8 /* 08A184 80089584 44077000 */ mfc1 $a3, $f14 /* 08A188 80089588 0C0224CF */ jal func_8008933C /* 08A18C 8008958C AFA40018 */ sw $a0, 0x18($sp) /* 08A190 80089590 3C014010 */ li $at, 0x40100000 # 2.250000 /* 08A194 80089594 44813800 */ mtc1 $at, $f7 /* 08A198 80089598 44803000 */ mtc1 $zero, $f6 /* 08A19C 8008959C 46000121 */ cvt.d.s $f4, $f0 /* 08A1A0 800895A0 8FA40018 */ lw $a0, 0x18($sp) /* 08A1A4 800895A4 4624303E */ c.le.d $f6, $f4 /* 08A1A8 800895A8 00000000 */ nop /* 08A1AC 800895AC 4502000A */ bc1fl .L800895D8 /* 08A1B0 800895B0 8FBF0014 */ lw $ra, 0x14($sp) /* 08A1B4 800895B4 94990000 */ lhu $t9, ($a0) /* 08A1B8 800895B8 24011000 */ li $at, 4096 /* 08A1BC 800895BC 93A40027 */ lbu $a0, 0x27($sp) /* 08A1C0 800895C0 33281000 */ andi $t0, $t9, 0x1000 /* 08A1C4 800895C4 51010004 */ beql $t0, $at, .L800895D8 /* 08A1C8 800895C8 8FBF0014 */ lw $ra, 0x14($sp) /* 08A1CC 800895CC 0C032418 */ jal func_800C9060 /* 08A1D0 800895D0 8FA50030 */ lw $a1, 0x30($sp) /* 08A1D4 800895D4 8FBF0014 */ lw $ra, 0x14($sp) .L800895D8: /* 08A1D8 800895D8 27BD0020 */ addiu $sp, $sp, 0x20 /* 08A1DC 800895DC 03E00008 */ jr $ra /* 08A1E0 800895E0 00000000 */ nop /* 08A1E4 800895E4 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 08A1E8 800895E8 AFB00018 */ sw $s0, 0x18($sp) /* 08A1EC 800895EC AFBF0034 */ sw $ra, 0x34($sp) /* 08A1F0 800895F0 AFB60030 */ sw $s6, 0x30($sp) /* 08A1F4 800895F4 AFB20020 */ sw $s2, 0x20($sp) /* 08A1F8 800895F8 3C10800E */ lui $s0, %hi(D_800DC4DC) # $s0, 0x800e /* 08A1FC 800895FC 00809025 */ move $s2, $a0 /* 08A200 80089600 AFB5002C */ sw $s5, 0x2c($sp) /* 08A204 80089604 AFB40028 */ sw $s4, 0x28($sp) /* 08A208 80089608 AFB30024 */ sw $s3, 0x24($sp) /* 08A20C 8008960C AFB1001C */ sw $s1, 0x1c($sp) /* 08A210 80089610 0000B025 */ move $s6, $zero /* 08A214 80089614 8E10C4DC */ lw $s0, %lo(D_800DC4DC)($s0) /* 08A218 80089618 0C01C88F */ jal func_8007223C /* 08A21C 8008961C 24050200 */ li $a1, 512 /* 08A220 80089620 10400021 */ beqz $v0, .L800896A8 /* 08A224 80089624 3C158019 */ lui $s5, %hi(D_8018D158) # $s5, 0x8019 /* 08A228 80089628 26B5D158 */ addiu $s5, %lo(D_8018D158) # addiu $s5, $s5, -0x2ea8 /* 08A22C 8008962C 8EAE0000 */ lw $t6, ($s5) /* 08A230 80089630 001278C0 */ sll $t7, $s2, 3 /* 08A234 80089634 01F27823 */ subu $t7, $t7, $s2 /* 08A238 80089638 19C0001B */ blez $t6, .L800896A8 /* 08A23C 8008963C 00008825 */ move $s1, $zero /* 08A240 80089640 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08A244 80089644 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08A248 80089648 000F7940 */ sll $t7, $t7, 5 /* 08A24C 8008964C 01F8A021 */ addu $s4, $t7, $t8 /* 08A250 80089650 3C130400 */ lui $s3, 0x400 /* 08A254 80089654 869900A6 */ lh $t9, 0xa6($s4) .L80089658: /* 08A258 80089658 02402025 */ move $a0, $s2 /* 08A25C 8008965C 5320000D */ beql $t9, $zero, .L80089694 /* 08A260 80089660 8EA80000 */ lw $t0, ($s5) /* 08A264 80089664 0C022346 */ jal func_80088D18 /* 08A268 80089668 02002825 */ move $a1, $s0 /* 08A26C 8008966C 10400008 */ beqz $v0, .L80089690 /* 08A270 80089670 02402025 */ move $a0, $s2 /* 08A274 80089674 02602825 */ move $a1, $s3 /* 08A278 80089678 0C01C88F */ jal func_8007223C /* 08A27C 8008967C 24160001 */ li $s6, 1 /* 08A280 80089680 50400004 */ beql $v0, $zero, .L80089694 /* 08A284 80089684 8EA80000 */ lw $t0, ($s5) /* 08A288 80089688 0C01C860 */ jal func_80072180 /* 08A28C 8008968C 00000000 */ nop .L80089690: /* 08A290 80089690 8EA80000 */ lw $t0, ($s5) .L80089694: /* 08A294 80089694 26310001 */ addiu $s1, $s1, 1 /* 08A298 80089698 26100DD8 */ addiu $s0, $s0, 0xdd8 /* 08A29C 8008969C 0228082A */ slt $at, $s1, $t0 /* 08A2A0 800896A0 5420FFED */ bnel $at, $zero, .L80089658 /* 08A2A4 800896A4 869900A6 */ lh $t9, 0xa6($s4) .L800896A8: /* 08A2A8 800896A8 8FBF0034 */ lw $ra, 0x34($sp) /* 08A2AC 800896AC 02C01025 */ move $v0, $s6 /* 08A2B0 800896B0 8FB60030 */ lw $s6, 0x30($sp) /* 08A2B4 800896B4 8FB00018 */ lw $s0, 0x18($sp) /* 08A2B8 800896B8 8FB1001C */ lw $s1, 0x1c($sp) /* 08A2BC 800896BC 8FB20020 */ lw $s2, 0x20($sp) /* 08A2C0 800896C0 8FB30024 */ lw $s3, 0x24($sp) /* 08A2C4 800896C4 8FB40028 */ lw $s4, 0x28($sp) /* 08A2C8 800896C8 8FB5002C */ lw $s5, 0x2c($sp) /* 08A2CC 800896CC 03E00008 */ jr $ra /* 08A2D0 800896D0 27BD0038 */ addiu $sp, $sp, 0x38 /* 08A2D4 800896D4 27BDFFB0 */ addiu $sp, $sp, -0x50 /* 08A2D8 800896D8 AFB00030 */ sw $s0, 0x30($sp) /* 08A2DC 800896DC F7B80028 */ sdc1 $f24, 0x28($sp) /* 08A2E0 800896E0 F7B60020 */ sdc1 $f22, 0x20($sp) /* 08A2E4 800896E4 4485B000 */ mtc1 $a1, $f22 /* 08A2E8 800896E8 4486C000 */ mtc1 $a2, $f24 /* 08A2EC 800896EC AFBF004C */ sw $ra, 0x4c($sp) /* 08A2F0 800896F0 AFB20038 */ sw $s2, 0x38($sp) /* 08A2F4 800896F4 3C10800E */ lui $s0, %hi(D_800DC4DC) # $s0, 0x800e /* 08A2F8 800896F8 00809025 */ move $s2, $a0 /* 08A2FC 800896FC AFB60048 */ sw $s6, 0x48($sp) /* 08A300 80089700 AFB50044 */ sw $s5, 0x44($sp) /* 08A304 80089704 AFB40040 */ sw $s4, 0x40($sp) /* 08A308 80089708 AFB3003C */ sw $s3, 0x3c($sp) /* 08A30C 8008970C AFB10034 */ sw $s1, 0x34($sp) /* 08A310 80089710 F7B40018 */ sdc1 $f20, 0x18($sp) /* 08A314 80089714 8E10C4DC */ lw $s0, %lo(D_800DC4DC)($s0) /* 08A318 80089718 0C01C88F */ jal func_8007223C /* 08A31C 8008971C 24050200 */ li $a1, 512 /* 08A320 80089720 10400032 */ beqz $v0, .L800897EC /* 08A324 80089724 3C148019 */ lui $s4, %hi(D_8018D158) # $s4, 0x8019 /* 08A328 80089728 2694D158 */ addiu $s4, %lo(D_8018D158) # addiu $s4, $s4, -0x2ea8 /* 08A32C 8008972C 8E8E0000 */ lw $t6, ($s4) /* 08A330 80089730 001278C0 */ sll $t7, $s2, 3 /* 08A334 80089734 01F27823 */ subu $t7, $t7, $s2 /* 08A338 80089738 19C0002C */ blez $t6, .L800897EC /* 08A33C 8008973C 00008825 */ move $s1, $zero /* 08A340 80089740 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08A344 80089744 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08A348 80089748 000F7940 */ sll $t7, $t7, 5 /* 08A34C 8008974C 3C01800F */ lui $at, %hi(D_800EF4D8) /* 08A350 80089750 3C158000 */ lui $s5, (0x80000200 >> 16) # lui $s5, 0x8000 /* 08A354 80089754 36B50200 */ ori $s5, (0x80000200 & 0xFFFF) # ori $s5, $s5, 0x200 /* 08A358 80089758 D434F4D8 */ ldc1 $f20, %lo(D_800EF4D8)($at) /* 08A35C 8008975C 01F89821 */ addu $s3, $t7, $t8 /* 08A360 80089760 3C160400 */ lui $s6, 0x400 /* 08A364 80089764 867900A6 */ lh $t9, 0xa6($s3) .L80089768: /* 08A368 80089768 5320001B */ beql $t9, $zero, .L800897D8 /* 08A36C 8008976C 8E8A0000 */ lw $t2, ($s4) /* 08A370 80089770 8E0800BC */ lw $t0, 0xbc($s0) /* 08A374 80089774 02402025 */ move $a0, $s2 /* 08A378 80089778 01154824 */ and $t1, $t0, $s5 /* 08A37C 8008977C 55200016 */ bnel $t1, $zero, .L800897D8 /* 08A380 80089780 8E8A0000 */ lw $t2, ($s4) /* 08A384 80089784 0C022346 */ jal func_80088D18 /* 08A388 80089788 02002825 */ move $a1, $s0 /* 08A38C 8008978C 50400012 */ beql $v0, $zero, .L800897D8 /* 08A390 80089790 8E8A0000 */ lw $t2, ($s4) /* 08A394 80089794 4600C121 */ cvt.d.s $f4, $f24 /* 08A398 80089798 4406B000 */ mfc1 $a2, $f22 /* 08A39C 8008979C 46342182 */ mul.d $f6, $f4, $f20 /* 08A3A0 800897A0 02002025 */ move $a0, $s0 /* 08A3A4 800897A4 02402825 */ move $a1, $s2 /* 08A3A8 800897A8 46203220 */ cvt.s.d $f8, $f6 /* 08A3AC 800897AC 44074000 */ mfc1 $a3, $f8 /* 08A3B0 800897B0 0C0224CF */ jal func_8008933C /* 08A3B4 800897B4 00000000 */ nop /* 08A3B8 800897B8 02402025 */ move $a0, $s2 /* 08A3BC 800897BC 0C01C88F */ jal func_8007223C /* 08A3C0 800897C0 02C02825 */ move $a1, $s6 /* 08A3C4 800897C4 50400004 */ beql $v0, $zero, .L800897D8 /* 08A3C8 800897C8 8E8A0000 */ lw $t2, ($s4) /* 08A3CC 800897CC 0C01C860 */ jal func_80072180 /* 08A3D0 800897D0 00000000 */ nop /* 08A3D4 800897D4 8E8A0000 */ lw $t2, ($s4) .L800897D8: /* 08A3D8 800897D8 26310001 */ addiu $s1, $s1, 1 /* 08A3DC 800897DC 26100DD8 */ addiu $s0, $s0, 0xdd8 /* 08A3E0 800897E0 022A082A */ slt $at, $s1, $t2 /* 08A3E4 800897E4 5420FFE0 */ bnel $at, $zero, .L80089768 /* 08A3E8 800897E8 867900A6 */ lh $t9, 0xa6($s3) .L800897EC: /* 08A3EC 800897EC 8FBF004C */ lw $ra, 0x4c($sp) /* 08A3F0 800897F0 D7B40018 */ ldc1 $f20, 0x18($sp) /* 08A3F4 800897F4 D7B60020 */ ldc1 $f22, 0x20($sp) /* 08A3F8 800897F8 D7B80028 */ ldc1 $f24, 0x28($sp) /* 08A3FC 800897FC 8FB00030 */ lw $s0, 0x30($sp) /* 08A400 80089800 8FB10034 */ lw $s1, 0x34($sp) /* 08A404 80089804 8FB20038 */ lw $s2, 0x38($sp) /* 08A408 80089808 8FB3003C */ lw $s3, 0x3c($sp) /* 08A40C 8008980C 8FB40040 */ lw $s4, 0x40($sp) /* 08A410 80089810 8FB50044 */ lw $s5, 0x44($sp) /* 08A414 80089814 8FB60048 */ lw $s6, 0x48($sp) /* 08A418 80089818 03E00008 */ jr $ra /* 08A41C 8008981C 27BD0050 */ addiu $sp, $sp, 0x50 glabel func_80089820 /* 08A420 80089820 27BDFFA0 */ addiu $sp, $sp, -0x60 /* 08A424 80089824 AFB00038 */ sw $s0, 0x38($sp) /* 08A428 80089828 F7BA0030 */ sdc1 $f26, 0x30($sp) /* 08A42C 8008982C F7B80028 */ sdc1 $f24, 0x28($sp) /* 08A430 80089830 4485C000 */ mtc1 $a1, $f24 /* 08A434 80089834 4486D000 */ mtc1 $a2, $f26 /* 08A438 80089838 AFBF005C */ sw $ra, 0x5c($sp) /* 08A43C 8008983C AFBE0058 */ sw $fp, 0x58($sp) /* 08A440 80089840 AFB20040 */ sw $s2, 0x40($sp) /* 08A444 80089844 3C10800E */ lui $s0, %hi(D_800DC4DC) # $s0, 0x800e /* 08A448 80089848 00809025 */ move $s2, $a0 /* 08A44C 8008984C 00E0F025 */ move $fp, $a3 /* 08A450 80089850 AFB70054 */ sw $s7, 0x54($sp) /* 08A454 80089854 AFB60050 */ sw $s6, 0x50($sp) /* 08A458 80089858 AFB5004C */ sw $s5, 0x4c($sp) /* 08A45C 8008985C AFB40048 */ sw $s4, 0x48($sp) /* 08A460 80089860 AFB30044 */ sw $s3, 0x44($sp) /* 08A464 80089864 AFB1003C */ sw $s1, 0x3c($sp) /* 08A468 80089868 F7B60020 */ sdc1 $f22, 0x20($sp) /* 08A46C 8008986C F7B40018 */ sdc1 $f20, 0x18($sp) /* 08A470 80089870 8E10C4DC */ lw $s0, %lo(D_800DC4DC)($s0) /* 08A474 80089874 0C01C87A */ jal func_800721E8 /* 08A478 80089878 3C050200 */ lui $a1, 0x200 /* 08A47C 8008987C 02402025 */ move $a0, $s2 /* 08A480 80089880 0C01C88F */ jal func_8007223C /* 08A484 80089884 24050200 */ li $a1, 512 /* 08A488 80089888 1040004E */ beqz $v0, .L800899C4 /* 08A48C 8008988C 3C148019 */ lui $s4, %hi(D_8018D158) # $s4, 0x8019 /* 08A490 80089890 2694D158 */ addiu $s4, %lo(D_8018D158) # addiu $s4, $s4, -0x2ea8 /* 08A494 80089894 8E8E0000 */ lw $t6, ($s4) /* 08A498 80089898 001278C0 */ sll $t7, $s2, 3 /* 08A49C 8008989C 01F27823 */ subu $t7, $t7, $s2 /* 08A4A0 800898A0 19C00048 */ blez $t6, .L800899C4 /* 08A4A4 800898A4 00008825 */ move $s1, $zero /* 08A4A8 800898A8 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08A4AC 800898AC 3C014010 */ li $at, 0x40100000 # 2.250000 /* 08A4B0 800898B0 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08A4B4 800898B4 000F7940 */ sll $t7, $t7, 5 /* 08A4B8 800898B8 4481B800 */ mtc1 $at, $f23 /* 08A4BC 800898BC 4480B000 */ mtc1 $zero, $f22 /* 08A4C0 800898C0 01F89821 */ addu $s3, $t7, $t8 /* 08A4C4 800898C4 24171000 */ li $s7, 4096 /* 08A4C8 800898C8 3C160400 */ lui $s6, 0x400 /* 08A4CC 800898CC 3C158000 */ lui $s5, 0x8000 /* 08A4D0 800898D0 867900A6 */ lh $t9, 0xa6($s3) .L800898D4: /* 08A4D4 800898D4 53200036 */ beql $t9, $zero, .L800899B0 /* 08A4D8 800898D8 8E980000 */ lw $t8, ($s4) /* 08A4DC 800898DC 8E0800BC */ lw $t0, 0xbc($s0) /* 08A4E0 800898E0 01154824 */ and $t1, $t0, $s5 /* 08A4E4 800898E4 55200032 */ bnel $t1, $zero, .L800899B0 /* 08A4E8 800898E8 8E980000 */ lw $t8, ($s4) /* 08A4EC 800898EC 96020000 */ lhu $v0, ($s0) /* 08A4F0 800898F0 304A8000 */ andi $t2, $v0, 0x8000 /* 08A4F4 800898F4 1140002D */ beqz $t2, .L800899AC /* 08A4F8 800898F8 304B0100 */ andi $t3, $v0, 0x100 /* 08A4FC 800898FC 1560002B */ bnez $t3, .L800899AC /* 08A500 80089900 02402025 */ move $a0, $s2 /* 08A504 80089904 0C022346 */ jal func_80088D18 /* 08A508 80089908 02002825 */ move $a1, $s0 /* 08A50C 8008990C 50400028 */ beql $v0, $zero, .L800899B0 /* 08A510 80089910 8E980000 */ lw $t8, ($s4) /* 08A514 80089914 8E0C00BC */ lw $t4, 0xbc($s0) /* 08A518 80089918 02402025 */ move $a0, $s2 /* 08A51C 8008991C 3C01800F */ lui $at, %hi(D_800EF4E0) /* 08A520 80089920 318D0200 */ andi $t5, $t4, 0x200 /* 08A524 80089924 11A00005 */ beqz $t5, .L8008993C /* 08A528 80089928 00000000 */ nop /* 08A52C 8008992C 0C01C870 */ jal func_800721C0 /* 08A530 80089930 3C050200 */ lui $a1, 0x200 /* 08A534 80089934 1000001E */ b .L800899B0 /* 08A538 80089938 8E980000 */ lw $t8, ($s4) .L8008993C: /* 08A53C 8008993C D426F4E0 */ ldc1 $f6, %lo(D_800EF4E0)($at) /* 08A540 80089940 4600D121 */ cvt.d.s $f4, $f26 /* 08A544 80089944 02402025 */ move $a0, $s2 /* 08A548 80089948 46262202 */ mul.d $f8, $f4, $f6 /* 08A54C 8008994C 02C02825 */ move $a1, $s6 /* 08A550 80089950 0C01C88F */ jal func_8007223C /* 08A554 80089954 46204520 */ cvt.s.d $f20, $f8 /* 08A558 80089958 50400004 */ beql $v0, $zero, .L8008996C /* 08A55C 8008995C 4406C000 */ mfc1 $a2, $f24 /* 08A560 80089960 0C01C860 */ jal func_80072180 /* 08A564 80089964 00000000 */ nop /* 08A568 80089968 4406C000 */ mfc1 $a2, $f24 .L8008996C: /* 08A56C 8008996C 4407A000 */ mfc1 $a3, $f20 /* 08A570 80089970 02002025 */ move $a0, $s0 /* 08A574 80089974 0C0224CF */ jal func_8008933C /* 08A578 80089978 02402825 */ move $a1, $s2 /* 08A57C 8008997C 460002A1 */ cvt.d.s $f10, $f0 /* 08A580 80089980 462AB03E */ c.le.d $f22, $f10 /* 08A584 80089984 00000000 */ nop /* 08A588 80089988 45020009 */ bc1fl .L800899B0 /* 08A58C 8008998C 8E980000 */ lw $t8, ($s4) /* 08A590 80089990 960E0000 */ lhu $t6, ($s0) /* 08A594 80089994 322400FF */ andi $a0, $s1, 0xff /* 08A598 80089998 31CF1000 */ andi $t7, $t6, 0x1000 /* 08A59C 8008999C 52EF0004 */ beql $s7, $t7, .L800899B0 /* 08A5A0 800899A0 8E980000 */ lw $t8, ($s4) /* 08A5A4 800899A4 0C032418 */ jal func_800C9060 /* 08A5A8 800899A8 03C02825 */ move $a1, $fp .L800899AC: /* 08A5AC 800899AC 8E980000 */ lw $t8, ($s4) .L800899B0: /* 08A5B0 800899B0 26310001 */ addiu $s1, $s1, 1 /* 08A5B4 800899B4 26100DD8 */ addiu $s0, $s0, 0xdd8 /* 08A5B8 800899B8 0238082A */ slt $at, $s1, $t8 /* 08A5BC 800899BC 5420FFC5 */ bnel $at, $zero, .L800898D4 /* 08A5C0 800899C0 867900A6 */ lh $t9, 0xa6($s3) .L800899C4: /* 08A5C4 800899C4 8FBF005C */ lw $ra, 0x5c($sp) /* 08A5C8 800899C8 D7B40018 */ ldc1 $f20, 0x18($sp) /* 08A5CC 800899CC D7B60020 */ ldc1 $f22, 0x20($sp) /* 08A5D0 800899D0 D7B80028 */ ldc1 $f24, 0x28($sp) /* 08A5D4 800899D4 D7BA0030 */ ldc1 $f26, 0x30($sp) /* 08A5D8 800899D8 8FB00038 */ lw $s0, 0x38($sp) /* 08A5DC 800899DC 8FB1003C */ lw $s1, 0x3c($sp) /* 08A5E0 800899E0 8FB20040 */ lw $s2, 0x40($sp) /* 08A5E4 800899E4 8FB30044 */ lw $s3, 0x44($sp) /* 08A5E8 800899E8 8FB40048 */ lw $s4, 0x48($sp) /* 08A5EC 800899EC 8FB5004C */ lw $s5, 0x4c($sp) /* 08A5F0 800899F0 8FB60050 */ lw $s6, 0x50($sp) /* 08A5F4 800899F4 8FB70054 */ lw $s7, 0x54($sp) /* 08A5F8 800899F8 8FBE0058 */ lw $fp, 0x58($sp) /* 08A5FC 800899FC 03E00008 */ jr $ra /* 08A600 80089A00 27BD0060 */ addiu $sp, $sp, 0x60 glabel func_80089A04 /* 08A604 80089A04 27BDFFB0 */ addiu $sp, $sp, -0x50 /* 08A608 80089A08 AFB00030 */ sw $s0, 0x30($sp) /* 08A60C 80089A0C F7B80028 */ sdc1 $f24, 0x28($sp) /* 08A610 80089A10 F7B60020 */ sdc1 $f22, 0x20($sp) /* 08A614 80089A14 4485B000 */ mtc1 $a1, $f22 /* 08A618 80089A18 4486C000 */ mtc1 $a2, $f24 /* 08A61C 80089A1C AFBF004C */ sw $ra, 0x4c($sp) /* 08A620 80089A20 AFB20038 */ sw $s2, 0x38($sp) /* 08A624 80089A24 3C10800E */ lui $s0, %hi(D_800DC4DC) # $s0, 0x800e /* 08A628 80089A28 00809025 */ move $s2, $a0 /* 08A62C 80089A2C AFB60048 */ sw $s6, 0x48($sp) /* 08A630 80089A30 AFB50044 */ sw $s5, 0x44($sp) /* 08A634 80089A34 AFB40040 */ sw $s4, 0x40($sp) /* 08A638 80089A38 AFB3003C */ sw $s3, 0x3c($sp) /* 08A63C 80089A3C AFB10034 */ sw $s1, 0x34($sp) /* 08A640 80089A40 F7B40018 */ sdc1 $f20, 0x18($sp) /* 08A644 80089A44 8E10C4DC */ lw $s0, %lo(D_800DC4DC)($s0) /* 08A648 80089A48 0C01C88F */ jal func_8007223C /* 08A64C 80089A4C 24050200 */ li $a1, 512 /* 08A650 80089A50 10400032 */ beqz $v0, .L80089B1C /* 08A654 80089A54 3C148019 */ lui $s4, %hi(D_8018D158) # $s4, 0x8019 /* 08A658 80089A58 2694D158 */ addiu $s4, %lo(D_8018D158) # addiu $s4, $s4, -0x2ea8 /* 08A65C 80089A5C 8E8E0000 */ lw $t6, ($s4) /* 08A660 80089A60 001278C0 */ sll $t7, $s2, 3 /* 08A664 80089A64 01F27823 */ subu $t7, $t7, $s2 /* 08A668 80089A68 19C0002C */ blez $t6, .L80089B1C /* 08A66C 80089A6C 00008825 */ move $s1, $zero /* 08A670 80089A70 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08A674 80089A74 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08A678 80089A78 000F7940 */ sll $t7, $t7, 5 /* 08A67C 80089A7C 3C01800F */ lui $at, %hi(D_800EF4E8) /* 08A680 80089A80 3C158000 */ lui $s5, (0x80000200 >> 16) # lui $s5, 0x8000 /* 08A684 80089A84 36B50200 */ ori $s5, (0x80000200 & 0xFFFF) # ori $s5, $s5, 0x200 /* 08A688 80089A88 D434F4E8 */ ldc1 $f20, %lo(D_800EF4E8)($at) /* 08A68C 80089A8C 01F89821 */ addu $s3, $t7, $t8 /* 08A690 80089A90 3C160400 */ lui $s6, 0x400 /* 08A694 80089A94 867900A6 */ lh $t9, 0xa6($s3) .L80089A98: /* 08A698 80089A98 5320001B */ beql $t9, $zero, .L80089B08 /* 08A69C 80089A9C 8E8A0000 */ lw $t2, ($s4) /* 08A6A0 80089AA0 8E0800BC */ lw $t0, 0xbc($s0) /* 08A6A4 80089AA4 02402025 */ move $a0, $s2 /* 08A6A8 80089AA8 01154824 */ and $t1, $t0, $s5 /* 08A6AC 80089AAC 55200016 */ bnel $t1, $zero, .L80089B08 /* 08A6B0 80089AB0 8E8A0000 */ lw $t2, ($s4) /* 08A6B4 80089AB4 0C022369 */ jal func_80088DA4 /* 08A6B8 80089AB8 02002825 */ move $a1, $s0 /* 08A6BC 80089ABC 50400012 */ beql $v0, $zero, .L80089B08 /* 08A6C0 80089AC0 8E8A0000 */ lw $t2, ($s4) /* 08A6C4 80089AC4 4600C121 */ cvt.d.s $f4, $f24 /* 08A6C8 80089AC8 4406B000 */ mfc1 $a2, $f22 /* 08A6CC 80089ACC 46342182 */ mul.d $f6, $f4, $f20 /* 08A6D0 80089AD0 02002025 */ move $a0, $s0 /* 08A6D4 80089AD4 02402825 */ move $a1, $s2 /* 08A6D8 80089AD8 46203220 */ cvt.s.d $f8, $f6 /* 08A6DC 80089ADC 44074000 */ mfc1 $a3, $f8 /* 08A6E0 80089AE0 0C0224CF */ jal func_8008933C /* 08A6E4 80089AE4 00000000 */ nop /* 08A6E8 80089AE8 02402025 */ move $a0, $s2 /* 08A6EC 80089AEC 0C01C88F */ jal func_8007223C /* 08A6F0 80089AF0 02C02825 */ move $a1, $s6 /* 08A6F4 80089AF4 50400004 */ beql $v0, $zero, .L80089B08 /* 08A6F8 80089AF8 8E8A0000 */ lw $t2, ($s4) /* 08A6FC 80089AFC 0C01C860 */ jal func_80072180 /* 08A700 80089B00 00000000 */ nop /* 08A704 80089B04 8E8A0000 */ lw $t2, ($s4) .L80089B08: /* 08A708 80089B08 26310001 */ addiu $s1, $s1, 1 /* 08A70C 80089B0C 26100DD8 */ addiu $s0, $s0, 0xdd8 /* 08A710 80089B10 022A082A */ slt $at, $s1, $t2 /* 08A714 80089B14 5420FFE0 */ bnel $at, $zero, .L80089A98 /* 08A718 80089B18 867900A6 */ lh $t9, 0xa6($s3) .L80089B1C: /* 08A71C 80089B1C 8FBF004C */ lw $ra, 0x4c($sp) /* 08A720 80089B20 D7B40018 */ ldc1 $f20, 0x18($sp) /* 08A724 80089B24 D7B60020 */ ldc1 $f22, 0x20($sp) /* 08A728 80089B28 D7B80028 */ ldc1 $f24, 0x28($sp) /* 08A72C 80089B2C 8FB00030 */ lw $s0, 0x30($sp) /* 08A730 80089B30 8FB10034 */ lw $s1, 0x34($sp) /* 08A734 80089B34 8FB20038 */ lw $s2, 0x38($sp) /* 08A738 80089B38 8FB3003C */ lw $s3, 0x3c($sp) /* 08A73C 80089B3C 8FB40040 */ lw $s4, 0x40($sp) /* 08A740 80089B40 8FB50044 */ lw $s5, 0x44($sp) /* 08A744 80089B44 8FB60048 */ lw $s6, 0x48($sp) /* 08A748 80089B48 03E00008 */ jr $ra /* 08A74C 80089B4C 27BD0050 */ addiu $sp, $sp, 0x50 glabel func_80089B50 /* 08A750 80089B50 27BDFFB8 */ addiu $sp, $sp, -0x48 /* 08A754 80089B54 AFB00018 */ sw $s0, 0x18($sp) /* 08A758 80089B58 AFBF003C */ sw $ra, 0x3c($sp) /* 08A75C 80089B5C AFB30024 */ sw $s3, 0x24($sp) /* 08A760 80089B60 AFB1001C */ sw $s1, 0x1c($sp) /* 08A764 80089B64 3C10800E */ lui $s0, %hi(D_800DC4DC) # $s0, 0x800e /* 08A768 80089B68 00809825 */ move $s3, $a0 /* 08A76C 80089B6C AFBE0038 */ sw $fp, 0x38($sp) /* 08A770 80089B70 AFB70034 */ sw $s7, 0x34($sp) /* 08A774 80089B74 AFB60030 */ sw $s6, 0x30($sp) /* 08A778 80089B78 AFB5002C */ sw $s5, 0x2c($sp) /* 08A77C 80089B7C AFB40028 */ sw $s4, 0x28($sp) /* 08A780 80089B80 AFB20020 */ sw $s2, 0x20($sp) /* 08A784 80089B84 00008825 */ move $s1, $zero /* 08A788 80089B88 AFA00040 */ sw $zero, 0x40($sp) /* 08A78C 80089B8C 8E10C4DC */ lw $s0, %lo(D_800DC4DC)($s0) /* 08A790 80089B90 0C01C88F */ jal func_8007223C /* 08A794 80089B94 24050200 */ li $a1, 512 /* 08A798 80089B98 1040003B */ beqz $v0, .L80089C88 /* 08A79C 80089B9C 3C0E8019 */ lui $t6, %hi(D_8018D158) # $t6, 0x8019 /* 08A7A0 80089BA0 8DCED158 */ lw $t6, %lo(D_8018D158)($t6) /* 08A7A4 80089BA4 001378C0 */ sll $t7, $s3, 3 /* 08A7A8 80089BA8 01F37823 */ subu $t7, $t7, $s3 /* 08A7AC 80089BAC 19C00036 */ blez $t6, .L80089C88 /* 08A7B0 80089BB0 00009025 */ move $s2, $zero /* 08A7B4 80089BB4 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08A7B8 80089BB8 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08A7BC 80089BBC 000F7940 */ sll $t7, $t7, 5 /* 08A7C0 80089BC0 3C1E1901 */ lui $fp, (0x19018010 >> 16) # lui $fp, 0x1901 /* 08A7C4 80089BC4 37DE8010 */ ori $fp, (0x19018010 & 0xFFFF) # ori $fp, $fp, 0x8010 /* 08A7C8 80089BC8 01F8A021 */ addu $s4, $t7, $t8 /* 08A7CC 80089BCC 3C170400 */ lui $s7, 0x400 /* 08A7D0 80089BD0 3C160040 */ lui $s6, 0x40 /* 08A7D4 80089BD4 3C158100 */ lui $s5, 0x8100 .L80089BD8: /* 08A7D8 80089BD8 869900A6 */ lh $t9, 0xa6($s4) /* 08A7DC 80089BDC 13200023 */ beqz $t9, .L80089C6C /* 08A7E0 80089BE0 00000000 */ nop /* 08A7E4 80089BE4 8E0800BC */ lw $t0, 0xbc($s0) /* 08A7E8 80089BE8 01154824 */ and $t1, $t0, $s5 /* 08A7EC 80089BEC 1520001F */ bnez $t1, .L80089C6C /* 08A7F0 80089BF0 00000000 */ nop /* 08A7F4 80089BF4 96020000 */ lhu $v0, ($s0) /* 08A7F8 80089BF8 304A8000 */ andi $t2, $v0, 0x8000 /* 08A7FC 80089BFC 1140001B */ beqz $t2, .L80089C6C /* 08A800 80089C00 304B0100 */ andi $t3, $v0, 0x100 /* 08A804 80089C04 15600019 */ bnez $t3, .L80089C6C /* 08A808 80089C08 02602025 */ move $a0, $s3 /* 08A80C 80089C0C 0C022346 */ jal func_80088D18 /* 08A810 80089C10 02002825 */ move $a1, $s0 /* 08A814 80089C14 10400015 */ beqz $v0, .L80089C6C /* 08A818 80089C18 240C0001 */ li $t4, 1 /* 08A81C 80089C1C AFAC0040 */ sw $t4, 0x40($sp) /* 08A820 80089C20 8E0D00BC */ lw $t5, 0xbc($s0) /* 08A824 80089C24 322400FF */ andi $a0, $s1, 0xff /* 08A828 80089C28 31AE0200 */ andi $t6, $t5, 0x200 /* 08A82C 80089C2C 15C0000D */ bnez $t6, .L80089C64 /* 08A830 80089C30 00000000 */ nop /* 08A834 80089C34 8E0F000C */ lw $t7, 0xc($s0) /* 08A838 80089C38 02602025 */ move $a0, $s3 /* 08A83C 80089C3C 02E02825 */ move $a1, $s7 /* 08A840 80089C40 01F6C025 */ or $t8, $t7, $s6 /* 08A844 80089C44 0C01C88F */ jal func_8007223C /* 08A848 80089C48 AE18000C */ sw $t8, 0xc($s0) /* 08A84C 80089C4C 10400007 */ beqz $v0, .L80089C6C /* 08A850 80089C50 00000000 */ nop /* 08A854 80089C54 0C01C860 */ jal func_80072180 /* 08A858 80089C58 00000000 */ nop /* 08A85C 80089C5C 10000003 */ b .L80089C6C /* 08A860 80089C60 00000000 */ nop .L80089C64: /* 08A864 80089C64 0C032418 */ jal func_800C9060 /* 08A868 80089C68 03C02825 */ move $a1, $fp .L80089C6C: /* 08A86C 80089C6C 3C198019 */ lui $t9, %hi(D_8018D158) # $t9, 0x8019 /* 08A870 80089C70 8F39D158 */ lw $t9, %lo(D_8018D158)($t9) /* 08A874 80089C74 26520001 */ addiu $s2, $s2, 1 /* 08A878 80089C78 26100DD8 */ addiu $s0, $s0, 0xdd8 /* 08A87C 80089C7C 0259082A */ slt $at, $s2, $t9 /* 08A880 80089C80 1420FFD5 */ bnez $at, .L80089BD8 /* 08A884 80089C84 26310001 */ addiu $s1, $s1, 1 .L80089C88: /* 08A888 80089C88 8FBF003C */ lw $ra, 0x3c($sp) /* 08A88C 80089C8C 8FA20040 */ lw $v0, 0x40($sp) /* 08A890 80089C90 8FB00018 */ lw $s0, 0x18($sp) /* 08A894 80089C94 8FB1001C */ lw $s1, 0x1c($sp) /* 08A898 80089C98 8FB20020 */ lw $s2, 0x20($sp) /* 08A89C 80089C9C 8FB30024 */ lw $s3, 0x24($sp) /* 08A8A0 80089CA0 8FB40028 */ lw $s4, 0x28($sp) /* 08A8A4 80089CA4 8FB5002C */ lw $s5, 0x2c($sp) /* 08A8A8 80089CA8 8FB60030 */ lw $s6, 0x30($sp) /* 08A8AC 80089CAC 8FB70034 */ lw $s7, 0x34($sp) /* 08A8B0 80089CB0 8FBE0038 */ lw $fp, 0x38($sp) /* 08A8B4 80089CB4 03E00008 */ jr $ra /* 08A8B8 80089CB8 27BD0048 */ addiu $sp, $sp, 0x48 glabel func_80089CBC /* 08A8BC 80089CBC 27BDFFB8 */ addiu $sp, $sp, -0x48 /* 08A8C0 80089CC0 AFB00020 */ sw $s0, 0x20($sp) /* 08A8C4 80089CC4 F7B40018 */ sdc1 $f20, 0x18($sp) /* 08A8C8 80089CC8 4485A000 */ mtc1 $a1, $f20 /* 08A8CC 80089CCC AFBF0044 */ sw $ra, 0x44($sp) /* 08A8D0 80089CD0 AFB7003C */ sw $s7, 0x3c($sp) /* 08A8D4 80089CD4 AFB20028 */ sw $s2, 0x28($sp) /* 08A8D8 80089CD8 3C10800E */ lui $s0, %hi(D_800DC4DC) # $s0, 0x800e /* 08A8DC 80089CDC 00809025 */ move $s2, $a0 /* 08A8E0 80089CE0 AFBE0040 */ sw $fp, 0x40($sp) /* 08A8E4 80089CE4 AFB60038 */ sw $s6, 0x38($sp) /* 08A8E8 80089CE8 AFB50034 */ sw $s5, 0x34($sp) /* 08A8EC 80089CEC AFB40030 */ sw $s4, 0x30($sp) /* 08A8F0 80089CF0 AFB3002C */ sw $s3, 0x2c($sp) /* 08A8F4 80089CF4 AFB10024 */ sw $s1, 0x24($sp) /* 08A8F8 80089CF8 0000B825 */ move $s7, $zero /* 08A8FC 80089CFC 8E10C4DC */ lw $s0, %lo(D_800DC4DC)($s0) /* 08A900 80089D00 0C01C88F */ jal func_8007223C /* 08A904 80089D04 24050200 */ li $a1, 512 /* 08A908 80089D08 10400035 */ beqz $v0, .L80089DE0 /* 08A90C 80089D0C 3C1E8019 */ lui $fp, %hi(D_8018D158) # $fp, 0x8019 /* 08A910 80089D10 27DED158 */ addiu $fp, %lo(D_8018D158) # addiu $fp, $fp, -0x2ea8 /* 08A914 80089D14 8FCE0000 */ lw $t6, ($fp) /* 08A918 80089D18 001278C0 */ sll $t7, $s2, 3 /* 08A91C 80089D1C 01F27823 */ subu $t7, $t7, $s2 /* 08A920 80089D20 19C0002F */ blez $t6, .L80089DE0 /* 08A924 80089D24 00008825 */ move $s1, $zero /* 08A928 80089D28 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08A92C 80089D2C 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08A930 80089D30 000F7940 */ sll $t7, $t7, 5 /* 08A934 80089D34 01F8B021 */ addu $s6, $t7, $t8 /* 08A938 80089D38 3C150400 */ lui $s5, 0x400 /* 08A93C 80089D3C 3C140040 */ lui $s4, 0x40 /* 08A940 80089D40 3C138100 */ lui $s3, 0x8100 /* 08A944 80089D44 86D900A6 */ lh $t9, 0xa6($s6) .L80089D48: /* 08A948 80089D48 53200020 */ beql $t9, $zero, .L80089DCC /* 08A94C 80089D4C 8FD80000 */ lw $t8, ($fp) /* 08A950 80089D50 8E0800BC */ lw $t0, 0xbc($s0) /* 08A954 80089D54 01134824 */ and $t1, $t0, $s3 /* 08A958 80089D58 5520001C */ bnel $t1, $zero, .L80089DCC /* 08A95C 80089D5C 8FD80000 */ lw $t8, ($fp) /* 08A960 80089D60 96020000 */ lhu $v0, ($s0) /* 08A964 80089D64 304A8000 */ andi $t2, $v0, 0x8000 /* 08A968 80089D68 11400017 */ beqz $t2, .L80089DC8 /* 08A96C 80089D6C 304B0100 */ andi $t3, $v0, 0x100 /* 08A970 80089D70 15600015 */ bnez $t3, .L80089DC8 /* 08A974 80089D74 02402025 */ move $a0, $s2 /* 08A978 80089D78 4406A000 */ mfc1 $a2, $f20 /* 08A97C 80089D7C 0C0223A6 */ jal func_80088E98 /* 08A980 80089D80 02002825 */ move $a1, $s0 /* 08A984 80089D84 50400011 */ beql $v0, $zero, .L80089DCC /* 08A988 80089D88 8FD80000 */ lw $t8, ($fp) /* 08A98C 80089D8C 8E0C00BC */ lw $t4, 0xbc($s0) /* 08A990 80089D90 24170001 */ li $s7, 1 /* 08A994 80089D94 318D0200 */ andi $t5, $t4, 0x200 /* 08A998 80089D98 55A0000C */ bnel $t5, $zero, .L80089DCC /* 08A99C 80089D9C 8FD80000 */ lw $t8, ($fp) /* 08A9A0 80089DA0 8E0E000C */ lw $t6, 0xc($s0) /* 08A9A4 80089DA4 02402025 */ move $a0, $s2 /* 08A9A8 80089DA8 02A02825 */ move $a1, $s5 /* 08A9AC 80089DAC 01D47825 */ or $t7, $t6, $s4 /* 08A9B0 80089DB0 0C01C88F */ jal func_8007223C /* 08A9B4 80089DB4 AE0F000C */ sw $t7, 0xc($s0) /* 08A9B8 80089DB8 50400004 */ beql $v0, $zero, .L80089DCC /* 08A9BC 80089DBC 8FD80000 */ lw $t8, ($fp) /* 08A9C0 80089DC0 0C01C860 */ jal func_80072180 /* 08A9C4 80089DC4 00000000 */ nop .L80089DC8: /* 08A9C8 80089DC8 8FD80000 */ lw $t8, ($fp) .L80089DCC: /* 08A9CC 80089DCC 26310001 */ addiu $s1, $s1, 1 /* 08A9D0 80089DD0 26100DD8 */ addiu $s0, $s0, 0xdd8 /* 08A9D4 80089DD4 0238082A */ slt $at, $s1, $t8 /* 08A9D8 80089DD8 5420FFDB */ bnel $at, $zero, .L80089D48 /* 08A9DC 80089DDC 86D900A6 */ lh $t9, 0xa6($s6) .L80089DE0: /* 08A9E0 80089DE0 8FBF0044 */ lw $ra, 0x44($sp) /* 08A9E4 80089DE4 02E01025 */ move $v0, $s7 /* 08A9E8 80089DE8 8FB7003C */ lw $s7, 0x3c($sp) /* 08A9EC 80089DEC D7B40018 */ ldc1 $f20, 0x18($sp) /* 08A9F0 80089DF0 8FB00020 */ lw $s0, 0x20($sp) /* 08A9F4 80089DF4 8FB10024 */ lw $s1, 0x24($sp) /* 08A9F8 80089DF8 8FB20028 */ lw $s2, 0x28($sp) /* 08A9FC 80089DFC 8FB3002C */ lw $s3, 0x2c($sp) /* 08AA00 80089E00 8FB40030 */ lw $s4, 0x30($sp) /* 08AA04 80089E04 8FB50034 */ lw $s5, 0x34($sp) /* 08AA08 80089E08 8FB60038 */ lw $s6, 0x38($sp) /* 08AA0C 80089E0C 8FBE0040 */ lw $fp, 0x40($sp) /* 08AA10 80089E10 03E00008 */ jr $ra /* 08AA14 80089E14 27BD0048 */ addiu $sp, $sp, 0x48 /* 08AA18 80089E18 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 08AA1C 80089E1C AFB00018 */ sw $s0, 0x18($sp) /* 08AA20 80089E20 AFBF0034 */ sw $ra, 0x34($sp) /* 08AA24 80089E24 AFB60030 */ sw $s6, 0x30($sp) /* 08AA28 80089E28 AFB40028 */ sw $s4, 0x28($sp) /* 08AA2C 80089E2C 3C10800E */ lui $s0, %hi(D_800DC4DC) # $s0, 0x800e /* 08AA30 80089E30 0080A025 */ move $s4, $a0 /* 08AA34 80089E34 AFB5002C */ sw $s5, 0x2c($sp) /* 08AA38 80089E38 AFB30024 */ sw $s3, 0x24($sp) /* 08AA3C 80089E3C AFB20020 */ sw $s2, 0x20($sp) /* 08AA40 80089E40 AFB1001C */ sw $s1, 0x1c($sp) /* 08AA44 80089E44 0000B025 */ move $s6, $zero /* 08AA48 80089E48 8E10C4DC */ lw $s0, %lo(D_800DC4DC)($s0) /* 08AA4C 80089E4C 0C01C88F */ jal func_8007223C /* 08AA50 80089E50 24050200 */ li $a1, 512 /* 08AA54 80089E54 10400028 */ beqz $v0, .L80089EF8 /* 08AA58 80089E58 3C158019 */ lui $s5, %hi(D_8018D158) # $s5, 0x8019 /* 08AA5C 80089E5C 26B5D158 */ addiu $s5, %lo(D_8018D158) # addiu $s5, $s5, -0x2ea8 /* 08AA60 80089E60 8EAE0000 */ lw $t6, ($s5) /* 08AA64 80089E64 001478C0 */ sll $t7, $s4, 3 /* 08AA68 80089E68 01F47823 */ subu $t7, $t7, $s4 /* 08AA6C 80089E6C 19C00022 */ blez $t6, .L80089EF8 /* 08AA70 80089E70 00008825 */ move $s1, $zero /* 08AA74 80089E74 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08AA78 80089E78 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08AA7C 80089E7C 000F7940 */ sll $t7, $t7, 5 /* 08AA80 80089E80 3C138000 */ lui $s3, (0x800000C0 >> 16) # lui $s3, 0x8000 /* 08AA84 80089E84 367300C0 */ ori $s3, (0x800000C0 & 0xFFFF) # ori $s3, $s3, 0xc0 /* 08AA88 80089E88 01F89021 */ addu $s2, $t7, $t8 /* 08AA8C 80089E8C 865900A6 */ lh $t9, 0xa6($s2) .L80089E90: /* 08AA90 80089E90 53200014 */ beql $t9, $zero, .L80089EE4 /* 08AA94 80089E94 8EAE0000 */ lw $t6, ($s5) /* 08AA98 80089E98 8E0800BC */ lw $t0, 0xbc($s0) /* 08AA9C 80089E9C 02802025 */ move $a0, $s4 /* 08AAA0 80089EA0 01134824 */ and $t1, $t0, $s3 /* 08AAA4 80089EA4 5520000F */ bnel $t1, $zero, .L80089EE4 /* 08AAA8 80089EA8 8EAE0000 */ lw $t6, ($s5) /* 08AAAC 80089EAC 0C022346 */ jal func_80088D18 /* 08AAB0 80089EB0 02002825 */ move $a1, $s0 /* 08AAB4 80089EB4 5040000B */ beql $v0, $zero, .L80089EE4 /* 08AAB8 80089EB8 8EAE0000 */ lw $t6, ($s5) /* 08AABC 80089EBC 8E0A00BC */ lw $t2, 0xbc($s0) /* 08AAC0 80089EC0 314B0200 */ andi $t3, $t2, 0x200 /* 08AAC4 80089EC4 51600004 */ beql $t3, $zero, .L80089ED8 /* 08AAC8 80089EC8 8E0C000C */ lw $t4, 0xc($s0) /* 08AACC 80089ECC 10000004 */ b .L80089EE0 /* 08AAD0 80089ED0 24160001 */ li $s6, 1 /* 08AAD4 80089ED4 8E0C000C */ lw $t4, 0xc($s0) .L80089ED8: /* 08AAD8 80089ED8 358D0001 */ ori $t5, $t4, 1 /* 08AADC 80089EDC AE0D000C */ sw $t5, 0xc($s0) .L80089EE0: /* 08AAE0 80089EE0 8EAE0000 */ lw $t6, ($s5) .L80089EE4: /* 08AAE4 80089EE4 26310001 */ addiu $s1, $s1, 1 /* 08AAE8 80089EE8 26100DD8 */ addiu $s0, $s0, 0xdd8 /* 08AAEC 80089EEC 022E082A */ slt $at, $s1, $t6 /* 08AAF0 80089EF0 5420FFE7 */ bnel $at, $zero, .L80089E90 /* 08AAF4 80089EF4 865900A6 */ lh $t9, 0xa6($s2) .L80089EF8: /* 08AAF8 80089EF8 8FBF0034 */ lw $ra, 0x34($sp) /* 08AAFC 80089EFC 02C01025 */ move $v0, $s6 /* 08AB00 80089F00 8FB60030 */ lw $s6, 0x30($sp) /* 08AB04 80089F04 8FB00018 */ lw $s0, 0x18($sp) /* 08AB08 80089F08 8FB1001C */ lw $s1, 0x1c($sp) /* 08AB0C 80089F0C 8FB20020 */ lw $s2, 0x20($sp) /* 08AB10 80089F10 8FB30024 */ lw $s3, 0x24($sp) /* 08AB14 80089F14 8FB40028 */ lw $s4, 0x28($sp) /* 08AB18 80089F18 8FB5002C */ lw $s5, 0x2c($sp) /* 08AB1C 80089F1C 03E00008 */ jr $ra /* 08AB20 80089F20 27BD0038 */ addiu $sp, $sp, 0x38 glabel func_80089F24 /* 08AB24 80089F24 27BDFFC0 */ addiu $sp, $sp, -0x40 /* 08AB28 80089F28 AFB00018 */ sw $s0, 0x18($sp) /* 08AB2C 80089F2C AFBF003C */ sw $ra, 0x3c($sp) /* 08AB30 80089F30 AFB70034 */ sw $s7, 0x34($sp) /* 08AB34 80089F34 AFB20020 */ sw $s2, 0x20($sp) /* 08AB38 80089F38 3C10800E */ lui $s0, %hi(D_800DC4DC) # $s0, 0x800e /* 08AB3C 80089F3C 00809025 */ move $s2, $a0 /* 08AB40 80089F40 AFBE0038 */ sw $fp, 0x38($sp) /* 08AB44 80089F44 AFB60030 */ sw $s6, 0x30($sp) /* 08AB48 80089F48 AFB5002C */ sw $s5, 0x2c($sp) /* 08AB4C 80089F4C AFB40028 */ sw $s4, 0x28($sp) /* 08AB50 80089F50 AFB30024 */ sw $s3, 0x24($sp) /* 08AB54 80089F54 AFB1001C */ sw $s1, 0x1c($sp) /* 08AB58 80089F58 0000B825 */ move $s7, $zero /* 08AB5C 80089F5C 8E10C4DC */ lw $s0, %lo(D_800DC4DC)($s0) /* 08AB60 80089F60 0C01C88F */ jal func_8007223C /* 08AB64 80089F64 24050200 */ li $a1, 512 /* 08AB68 80089F68 10400030 */ beqz $v0, .L8008A02C /* 08AB6C 80089F6C 3C1E8019 */ lui $fp, %hi(D_8018D158) # $fp, 0x8019 /* 08AB70 80089F70 27DED158 */ addiu $fp, %lo(D_8018D158) # addiu $fp, $fp, -0x2ea8 /* 08AB74 80089F74 8FCE0000 */ lw $t6, ($fp) /* 08AB78 80089F78 001278C0 */ sll $t7, $s2, 3 /* 08AB7C 80089F7C 01F27823 */ subu $t7, $t7, $s2 /* 08AB80 80089F80 19C0002A */ blez $t6, .L8008A02C /* 08AB84 80089F84 00008825 */ move $s1, $zero /* 08AB88 80089F88 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08AB8C 80089F8C 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08AB90 80089F90 000F7940 */ sll $t7, $t7, 5 /* 08AB94 80089F94 3C148000 */ lui $s4, (0x800002C0 >> 16) # lui $s4, 0x8000 /* 08AB98 80089F98 369402C0 */ ori $s4, (0x800002C0 & 0xFFFF) # ori $s4, $s4, 0x2c0 /* 08AB9C 80089F9C 01F89821 */ addu $s3, $t7, $t8 /* 08ABA0 80089FA0 3C160020 */ lui $s6, 0x20 /* 08ABA4 80089FA4 3C150400 */ lui $s5, 0x400 /* 08ABA8 80089FA8 867900A6 */ lh $t9, 0xa6($s3) .L80089FAC: /* 08ABAC 80089FAC 5320001A */ beql $t9, $zero, .L8008A018 /* 08ABB0 80089FB0 8FCE0000 */ lw $t6, ($fp) /* 08ABB4 80089FB4 8E0800BC */ lw $t0, 0xbc($s0) /* 08ABB8 80089FB8 01144824 */ and $t1, $t0, $s4 /* 08ABBC 80089FBC 55200016 */ bnel $t1, $zero, .L8008A018 /* 08ABC0 80089FC0 8FCE0000 */ lw $t6, ($fp) /* 08ABC4 80089FC4 96020000 */ lhu $v0, ($s0) /* 08ABC8 80089FC8 304A8000 */ andi $t2, $v0, 0x8000 /* 08ABCC 80089FCC 11400011 */ beqz $t2, .L8008A014 /* 08ABD0 80089FD0 304B0100 */ andi $t3, $v0, 0x100 /* 08ABD4 80089FD4 1560000F */ bnez $t3, .L8008A014 /* 08ABD8 80089FD8 02402025 */ move $a0, $s2 /* 08ABDC 80089FDC 0C022346 */ jal func_80088D18 /* 08ABE0 80089FE0 02002825 */ move $a1, $s0 /* 08ABE4 80089FE4 1040000B */ beqz $v0, .L8008A014 /* 08ABE8 80089FE8 02402025 */ move $a0, $s2 /* 08ABEC 80089FEC 24170001 */ li $s7, 1 /* 08ABF0 80089FF0 0C01C88F */ jal func_8007223C /* 08ABF4 80089FF4 02A02825 */ move $a1, $s5 /* 08ABF8 80089FF8 50400004 */ beql $v0, $zero, .L8008A00C /* 08ABFC 80089FFC 8E0C000C */ lw $t4, 0xc($s0) /* 08AC00 8008A000 0C01C860 */ jal func_80072180 /* 08AC04 8008A004 00000000 */ nop /* 08AC08 8008A008 8E0C000C */ lw $t4, 0xc($s0) .L8008A00C: /* 08AC0C 8008A00C 01966825 */ or $t5, $t4, $s6 /* 08AC10 8008A010 AE0D000C */ sw $t5, 0xc($s0) .L8008A014: /* 08AC14 8008A014 8FCE0000 */ lw $t6, ($fp) .L8008A018: /* 08AC18 8008A018 26310001 */ addiu $s1, $s1, 1 /* 08AC1C 8008A01C 26100DD8 */ addiu $s0, $s0, 0xdd8 /* 08AC20 8008A020 022E082A */ slt $at, $s1, $t6 /* 08AC24 8008A024 5420FFE1 */ bnel $at, $zero, .L80089FAC /* 08AC28 8008A028 867900A6 */ lh $t9, 0xa6($s3) .L8008A02C: /* 08AC2C 8008A02C 8FBF003C */ lw $ra, 0x3c($sp) /* 08AC30 8008A030 02E01025 */ move $v0, $s7 /* 08AC34 8008A034 8FB70034 */ lw $s7, 0x34($sp) /* 08AC38 8008A038 8FB00018 */ lw $s0, 0x18($sp) /* 08AC3C 8008A03C 8FB1001C */ lw $s1, 0x1c($sp) /* 08AC40 8008A040 8FB20020 */ lw $s2, 0x20($sp) /* 08AC44 8008A044 8FB30024 */ lw $s3, 0x24($sp) /* 08AC48 8008A048 8FB40028 */ lw $s4, 0x28($sp) /* 08AC4C 8008A04C 8FB5002C */ lw $s5, 0x2c($sp) /* 08AC50 8008A050 8FB60030 */ lw $s6, 0x30($sp) /* 08AC54 8008A054 8FBE0038 */ lw $fp, 0x38($sp) /* 08AC58 8008A058 03E00008 */ jr $ra /* 08AC5C 8008A05C 27BD0040 */ addiu $sp, $sp, 0x40 glabel func_8008A060 /* 08AC60 8008A060 0004C0C0 */ sll $t8, $a0, 3 /* 08AC64 8008A064 0304C023 */ subu $t8, $t8, $a0 /* 08AC68 8008A068 0018C140 */ sll $t8, $t8, 5 /* 08AC6C 8008A06C 3C198016 */ lui $t9, %hi(D_80165CD8) # 0x8016 /* 08AC70 8008A070 AFA60008 */ sw $a2, 8($sp) /* 08AC74 8008A074 0338C821 */ addu $t9, $t9, $t8 /* 08AC78 8008A078 97395CD8 */ lhu $t9, %lo(D_80165CD8)($t9) # 0x5cd8($t9) /* 08AC7C 8008A07C 94AF0026 */ lhu $t7, 0x26($a1) /* 08AC80 8008A080 30CEFFFF */ andi $t6, $a2, 0xffff /* 08AC84 8008A084 000E5043 */ sra $t2, $t6, 1 /* 08AC88 8008A088 01F94823 */ subu $t1, $t7, $t9 /* 08AC8C 8008A08C 012A1021 */ addu $v0, $t1, $t2 /* 08AC90 8008A090 304BFFFF */ andi $t3, $v0, 0xffff /* 08AC94 8008A094 05600005 */ bltz $t3, .L8008A0AC /* 08AC98 8008A098 00001825 */ move $v1, $zero /* 08AC9C 8008A09C 01CB082A */ slt $at, $t6, $t3 /* 08ACA0 8008A0A0 14200002 */ bnez $at, .L8008A0AC /* 08ACA4 8008A0A4 00000000 */ nop /* 08ACA8 8008A0A8 24030001 */ li $v1, 1 .L8008A0AC: /* 08ACAC 8008A0AC 03E00008 */ jr $ra /* 08ACB0 8008A0B0 00601025 */ move $v0, $v1 glabel func_8008A0B4 /* 08ACB4 8008A0B4 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 08ACB8 8008A0B8 000470C0 */ sll $t6, $a0, 3 /* 08ACBC 8008A0BC 01C47023 */ subu $t6, $t6, $a0 /* 08ACC0 8008A0C0 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08ACC4 8008A0C4 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08ACC8 8008A0C8 000E7140 */ sll $t6, $t6, 5 /* 08ACCC 8008A0CC AFBF0014 */ sw $ra, 0x14($sp) /* 08ACD0 8008A0D0 AFA60030 */ sw $a2, 0x30($sp) /* 08ACD4 8008A0D4 AFA70034 */ sw $a3, 0x34($sp) /* 08ACD8 8008A0D8 01CF1021 */ addu $v0, $t6, $t7 /* 08ACDC 8008A0DC C4440004 */ lwc1 $f4, 4($v0) /* 08ACE0 8008A0E0 C4A60014 */ lwc1 $f6, 0x14($a1) /* 08ACE4 8008A0E4 C448000C */ lwc1 $f8, 0xc($v0) /* 08ACE8 8008A0E8 C4AA001C */ lwc1 $f10, 0x1c($a1) /* 08ACEC 8008A0EC AFA00018 */ sw $zero, 0x18($sp) /* 08ACF0 8008A0F0 46062301 */ sub.s $f12, $f4, $f6 /* 08ACF4 8008A0F4 0C0ADE0C */ jal func_802B7830 /* 08ACF8 8008A0F8 460A4381 */ sub.s $f14, $f8, $f10 /* 08ACFC 8008A0FC 8FB80030 */ lw $t8, 0x30($sp) /* 08AD00 8008A100 97A40036 */ lhu $a0, 0x36($sp) /* 08AD04 8008A104 8FA80018 */ lw $t0, 0x18($sp) /* 08AD08 8008A108 97190026 */ lhu $t9, 0x26($t8) /* 08AD0C 8008A10C 00045043 */ sra $t2, $a0, 1 /* 08AD10 8008A110 8FBF0014 */ lw $ra, 0x14($sp) /* 08AD14 8008A114 03224823 */ subu $t1, $t9, $v0 /* 08AD18 8008A118 012A1821 */ addu $v1, $t1, $t2 /* 08AD1C 8008A11C 306BFFFF */ andi $t3, $v1, 0xffff /* 08AD20 8008A120 05600005 */ bltz $t3, .L8008A138 /* 08AD24 8008A124 27BD0028 */ addiu $sp, $sp, 0x28 /* 08AD28 8008A128 008B082A */ slt $at, $a0, $t3 /* 08AD2C 8008A12C 14200002 */ bnez $at, .L8008A138 /* 08AD30 8008A130 00000000 */ nop /* 08AD34 8008A134 24080001 */ li $t0, 1 .L8008A138: /* 08AD38 8008A138 03E00008 */ jr $ra /* 08AD3C 8008A13C 01001025 */ move $v0, $t0 glabel func_8008A140 /* 08AD40 8008A140 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08AD44 8008A144 000470C0 */ sll $t6, $a0, 3 /* 08AD48 8008A148 AFBF0014 */ sw $ra, 0x14($sp) /* 08AD4C 8008A14C AFA60028 */ sw $a2, 0x28($sp) /* 08AD50 8008A150 01C47023 */ subu $t6, $t6, $a0 /* 08AD54 8008A154 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08AD58 8008A158 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08AD5C 8008A15C 000E7140 */ sll $t6, $t6, 5 /* 08AD60 8008A160 01CF1021 */ addu $v0, $t6, $t7 /* 08AD64 8008A164 8CA60008 */ lw $a2, 8($a1) /* 08AD68 8008A168 C4AC0000 */ lwc1 $f12, ($a1) /* 08AD6C 8008A16C AFA00018 */ sw $zero, 0x18($sp) /* 08AD70 8008A170 AFA50024 */ sw $a1, 0x24($sp) /* 08AD74 8008A174 C44E0004 */ lwc1 $f14, 4($v0) /* 08AD78 8008A178 0C0105DC */ jal func_80041770 /* 08AD7C 8008A17C 8C47000C */ lw $a3, 0xc($v0) /* 08AD80 8008A180 8FA50024 */ lw $a1, 0x24($sp) /* 08AD84 8008A184 97A4002A */ lhu $a0, 0x2a($sp) /* 08AD88 8008A188 8FA80018 */ lw $t0, 0x18($sp) /* 08AD8C 8008A18C 84A90026 */ lh $t1, 0x26($a1) /* 08AD90 8008A190 04810003 */ bgez $a0, .L8008A1A0 /* 08AD94 8008A194 0004C043 */ sra $t8, $a0, 1 /* 08AD98 8008A198 24810001 */ addiu $at, $a0, 1 /* 08AD9C 8008A19C 0001C043 */ sra $t8, $at, 1 .L8008A1A0: /* 08ADA0 8008A1A0 0058C821 */ addu $t9, $v0, $t8 /* 08ADA4 8008A1A4 03291823 */ subu $v1, $t9, $t1 /* 08ADA8 8008A1A8 306AFFFF */ andi $t2, $v1, 0xffff /* 08ADAC 8008A1AC 05400005 */ bltz $t2, .L8008A1C4 /* 08ADB0 8008A1B0 8FBF0014 */ lw $ra, 0x14($sp) /* 08ADB4 8008A1B4 008A082A */ slt $at, $a0, $t2 /* 08ADB8 8008A1B8 54200003 */ bnel $at, $zero, .L8008A1C8 /* 08ADBC 8008A1BC 01001025 */ move $v0, $t0 /* 08ADC0 8008A1C0 24080001 */ li $t0, 1 .L8008A1C4: /* 08ADC4 8008A1C4 01001025 */ move $v0, $t0 .L8008A1C8: /* 08ADC8 8008A1C8 03E00008 */ jr $ra /* 08ADCC 8008A1CC 27BD0020 */ addiu $sp, $sp, 0x20 glabel func_8008A1D0 /* 08ADD0 8008A1D0 00057880 */ sll $t7, $a1, 2 /* 08ADD4 8008A1D4 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 08ADD8 8008A1D8 01E57823 */ subu $t7, $t7, $a1 /* 08ADDC 8008A1DC 3C18800E */ lui $t8, %hi(D_800DDB40) # $t8, 0x800e /* 08ADE0 8008A1E0 8F18DB40 */ lw $t8, %lo(D_800DDB40)($t8) /* 08ADE4 8008A1E4 000F78C0 */ sll $t7, $t7, 3 /* 08ADE8 8008A1E8 01E57823 */ subu $t7, $t7, $a1 /* 08ADEC 8008A1EC 000F78C0 */ sll $t7, $t7, 3 /* 08ADF0 8008A1F0 AFBF001C */ sw $ra, 0x1c($sp) /* 08ADF4 8008A1F4 AFB00018 */ sw $s0, 0x18($sp) /* 08ADF8 8008A1F8 AFA50034 */ sw $a1, 0x34($sp) /* 08ADFC 8008A1FC 01F8C821 */ addu $t9, $t7, $t8 /* 08AE00 8008A200 00808025 */ move $s0, $a0 /* 08AE04 8008A204 AFA60038 */ sw $a2, 0x38($sp) /* 08AE08 8008A208 AFA7003C */ sw $a3, 0x3c($sp) /* 08AE0C 8008A20C AFB90024 */ sw $t9, 0x24($sp) /* 08AE10 8008A210 0C01C87A */ jal func_800721E8 /* 08AE14 8008A214 3C050014 */ lui $a1, 0x14 /* 08AE18 8008A218 02002025 */ move $a0, $s0 /* 08AE1C 8008A21C 0C02225B */ jal func_8008896C /* 08AE20 8008A220 8FA50024 */ lw $a1, 0x24($sp) /* 08AE24 8008A224 2C412711 */ sltiu $at, $v0, 0x2711 /* 08AE28 8008A228 10200003 */ beqz $at, .L8008A238 /* 08AE2C 8008A22C 00401825 */ move $v1, $v0 /* 08AE30 8008A230 10000007 */ b .L8008A250 /* 08AE34 8008A234 24065555 */ li $a2, 21845 .L8008A238: /* 08AE38 8008A238 34019C41 */ li $at, 40001 /* 08AE3C 8008A23C 0041082B */ sltu $at, $v0, $at /* 08AE40 8008A240 10200003 */ beqz $at, .L8008A250 /* 08AE44 8008A244 24062AAB */ li $a2, 10923 /* 08AE48 8008A248 10000001 */ b .L8008A250 /* 08AE4C 8008A24C 24064000 */ li $a2, 16384 .L8008A250: /* 08AE50 8008A250 02002025 */ move $a0, $s0 /* 08AE54 8008A254 8FA50024 */ lw $a1, 0x24($sp) /* 08AE58 8008A258 0C022850 */ jal func_8008A140 /* 08AE5C 8008A25C AFA3002C */ sw $v1, 0x2c($sp) /* 08AE60 8008A260 10400015 */ beqz $v0, .L8008A2B8 /* 08AE64 8008A264 8FA3002C */ lw $v1, 0x2c($sp) /* 08AE68 8008A268 8FA2003C */ lw $v0, 0x3c($sp) /* 08AE6C 8008A26C 02002025 */ move $a0, $s0 /* 08AE70 8008A270 3C050004 */ lui $a1, 4 /* 08AE74 8008A274 00420019 */ multu $v0, $v0 /* 08AE78 8008A278 00004012 */ mflo $t0 /* 08AE7C 8008A27C 0103082B */ sltu $at, $t0, $v1 /* 08AE80 8008A280 5420000E */ bnel $at, $zero, .L8008A2BC /* 08AE84 8008A284 8FBF001C */ lw $ra, 0x1c($sp) /* 08AE88 8008A288 0C01C870 */ jal func_800721C0 /* 08AE8C 8008A28C AFA3002C */ sw $v1, 0x2c($sp) /* 08AE90 8008A290 8FA20038 */ lw $v0, 0x38($sp) /* 08AE94 8008A294 8FA3002C */ lw $v1, 0x2c($sp) /* 08AE98 8008A298 02002025 */ move $a0, $s0 /* 08AE9C 8008A29C 00420019 */ multu $v0, $v0 /* 08AEA0 8008A2A0 00004812 */ mflo $t1 /* 08AEA4 8008A2A4 0069082B */ sltu $at, $v1, $t1 /* 08AEA8 8008A2A8 54200004 */ bnel $at, $zero, .L8008A2BC /* 08AEAC 8008A2AC 8FBF001C */ lw $ra, 0x1c($sp) /* 08AEB0 8008A2B0 0C01C870 */ jal func_800721C0 /* 08AEB4 8008A2B4 3C050010 */ lui $a1, 0x10 .L8008A2B8: /* 08AEB8 8008A2B8 8FBF001C */ lw $ra, 0x1c($sp) .L8008A2BC: /* 08AEBC 8008A2BC 8FB00018 */ lw $s0, 0x18($sp) /* 08AEC0 8008A2C0 27BD0030 */ addiu $sp, $sp, 0x30 /* 08AEC4 8008A2C4 03E00008 */ jr $ra /* 08AEC8 8008A2C8 00000000 */ nop /* 08AECC 8008A2CC 00057080 */ sll $t6, $a1, 2 /* 08AED0 8008A2D0 01C57023 */ subu $t6, $t6, $a1 /* 08AED4 8008A2D4 3C0F800E */ lui $t7, %hi(D_800DDB40) # $t7, 0x800e /* 08AED8 8008A2D8 8DEFDB40 */ lw $t7, %lo(D_800DDB40)($t7) /* 08AEDC 8008A2DC 000E70C0 */ sll $t6, $t6, 3 /* 08AEE0 8008A2E0 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08AEE4 8008A2E4 01C57023 */ subu $t6, $t6, $a1 /* 08AEE8 8008A2E8 000E70C0 */ sll $t6, $t6, 3 /* 08AEEC 8008A2EC AFBF0014 */ sw $ra, 0x14($sp) /* 08AEF0 8008A2F0 01CFC021 */ addu $t8, $t6, $t7 /* 08AEF4 8008A2F4 AFA40020 */ sw $a0, 0x20($sp) /* 08AEF8 8008A2F8 AFA60028 */ sw $a2, 0x28($sp) /* 08AEFC 8008A2FC AFB8001C */ sw $t8, 0x1c($sp) /* 08AF00 8008A300 0C01C87A */ jal func_800721E8 /* 08AF04 8008A304 3C050004 */ lui $a1, 4 /* 08AF08 8008A308 8FA20018 */ lw $v0, 0x18($sp) /* 08AF0C 8008A30C 8FA40020 */ lw $a0, 0x20($sp) /* 08AF10 8008A310 2C412711 */ sltiu $at, $v0, 0x2711 /* 08AF14 8008A314 50200004 */ beql $at, $zero, .L8008A328 /* 08AF18 8008A318 34019C41 */ li $at, 40001 /* 08AF1C 8008A31C 10000007 */ b .L8008A33C /* 08AF20 8008A320 24065555 */ li $a2, 21845 /* 08AF24 8008A324 34019C41 */ li $at, 40001 .L8008A328: /* 08AF28 8008A328 0041082B */ sltu $at, $v0, $at /* 08AF2C 8008A32C 10200003 */ beqz $at, .L8008A33C /* 08AF30 8008A330 97A6002A */ lhu $a2, 0x2a($sp) /* 08AF34 8008A334 10000001 */ b .L8008A33C /* 08AF38 8008A338 24064000 */ li $a2, 16384 .L8008A33C: /* 08AF3C 8008A33C 0C022850 */ jal func_8008A140 /* 08AF40 8008A340 8FA5001C */ lw $a1, 0x1c($sp) /* 08AF44 8008A344 10400003 */ beqz $v0, .L8008A354 /* 08AF48 8008A348 8FA40020 */ lw $a0, 0x20($sp) /* 08AF4C 8008A34C 0C01C870 */ jal func_800721C0 /* 08AF50 8008A350 3C050004 */ lui $a1, 4 .L8008A354: /* 08AF54 8008A354 8FBF0014 */ lw $ra, 0x14($sp) /* 08AF58 8008A358 27BD0020 */ addiu $sp, $sp, 0x20 /* 08AF5C 8008A35C 03E00008 */ jr $ra /* 08AF60 8008A360 00000000 */ nop glabel func_8008A364 /* 08AF64 8008A364 00057880 */ sll $t7, $a1, 2 /* 08AF68 8008A368 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 08AF6C 8008A36C 01E57823 */ subu $t7, $t7, $a1 /* 08AF70 8008A370 3C18800E */ lui $t8, %hi(D_800DDB40) # $t8, 0x800e /* 08AF74 8008A374 8F18DB40 */ lw $t8, %lo(D_800DDB40)($t8) /* 08AF78 8008A378 000F78C0 */ sll $t7, $t7, 3 /* 08AF7C 8008A37C 01E57823 */ subu $t7, $t7, $a1 /* 08AF80 8008A380 000F78C0 */ sll $t7, $t7, 3 /* 08AF84 8008A384 AFBF001C */ sw $ra, 0x1c($sp) /* 08AF88 8008A388 AFB00018 */ sw $s0, 0x18($sp) /* 08AF8C 8008A38C AFA5002C */ sw $a1, 0x2c($sp) /* 08AF90 8008A390 01F8C821 */ addu $t9, $t7, $t8 /* 08AF94 8008A394 00808025 */ move $s0, $a0 /* 08AF98 8008A398 AFA60030 */ sw $a2, 0x30($sp) /* 08AF9C 8008A39C AFA70034 */ sw $a3, 0x34($sp) /* 08AFA0 8008A3A0 AFB90024 */ sw $t9, 0x24($sp) /* 08AFA4 8008A3A4 0C01C87A */ jal func_800721E8 /* 08AFA8 8008A3A8 3C050006 */ lui $a1, 6 /* 08AFAC 8008A3AC 02002025 */ move $a0, $s0 /* 08AFB0 8008A3B0 0C02225B */ jal func_8008896C /* 08AFB4 8008A3B4 8FA50024 */ lw $a1, 0x24($sp) /* 08AFB8 8008A3B8 8FA40034 */ lw $a0, 0x34($sp) /* 08AFBC 8008A3BC 00401825 */ move $v1, $v0 /* 08AFC0 8008A3C0 3C050002 */ lui $a1, 2 /* 08AFC4 8008A3C4 00840019 */ multu $a0, $a0 /* 08AFC8 8008A3C8 02002025 */ move $a0, $s0 /* 08AFCC 8008A3CC 00004012 */ mflo $t0 /* 08AFD0 8008A3D0 0048082B */ sltu $at, $v0, $t0 /* 08AFD4 8008A3D4 5020001B */ beql $at, $zero, .L8008A444 /* 08AFD8 8008A3D8 8FBF001C */ lw $ra, 0x1c($sp) /* 08AFDC 8008A3DC 0C01C870 */ jal func_800721C0 /* 08AFE0 8008A3E0 AFA20020 */ sw $v0, 0x20($sp) /* 08AFE4 8008A3E4 8FA30020 */ lw $v1, 0x20($sp) /* 08AFE8 8008A3E8 02002025 */ move $a0, $s0 /* 08AFEC 8008A3EC 8FA50024 */ lw $a1, 0x24($sp) /* 08AFF0 8008A3F0 2C612711 */ sltiu $at, $v1, 0x2711 /* 08AFF4 8008A3F4 50200004 */ beql $at, $zero, .L8008A408 /* 08AFF8 8008A3F8 34019C41 */ li $at, 40001 /* 08AFFC 8008A3FC 10000007 */ b .L8008A41C /* 08B000 8008A400 24065555 */ li $a2, 21845 /* 08B004 8008A404 34019C41 */ li $at, 40001 .L8008A408: /* 08B008 8008A408 0061082B */ sltu $at, $v1, $at /* 08B00C 8008A40C 10200003 */ beqz $at, .L8008A41C /* 08B010 8008A410 97A60032 */ lhu $a2, 0x32($sp) /* 08B014 8008A414 10000001 */ b .L8008A41C /* 08B018 8008A418 24064000 */ li $a2, 16384 .L8008A41C: /* 08B01C 8008A41C 0C022850 */ jal func_8008A140 /* 08B020 8008A420 AFA30020 */ sw $v1, 0x20($sp) /* 08B024 8008A424 10400006 */ beqz $v0, .L8008A440 /* 08B028 8008A428 8FA30020 */ lw $v1, 0x20($sp) /* 08B02C 8008A42C 02002025 */ move $a0, $s0 /* 08B030 8008A430 3C050004 */ lui $a1, 4 /* 08B034 8008A434 0C01C870 */ jal func_800721C0 /* 08B038 8008A438 AFA30020 */ sw $v1, 0x20($sp) /* 08B03C 8008A43C 8FA30020 */ lw $v1, 0x20($sp) .L8008A440: /* 08B040 8008A440 8FBF001C */ lw $ra, 0x1c($sp) .L8008A444: /* 08B044 8008A444 8FB00018 */ lw $s0, 0x18($sp) /* 08B048 8008A448 27BD0028 */ addiu $sp, $sp, 0x28 /* 08B04C 8008A44C 03E00008 */ jr $ra /* 08B050 8008A450 00601025 */ move $v0, $v1 glabel func_8008A454 /* 08B054 8008A454 00057080 */ sll $t6, $a1, 2 /* 08B058 8008A458 01C57023 */ subu $t6, $t6, $a1 /* 08B05C 8008A45C 000E70C0 */ sll $t6, $t6, 3 /* 08B060 8008A460 3C0F800E */ lui $t7, %hi(D_800DDB40) # $t7, 0x800e /* 08B064 8008A464 8DEFDB40 */ lw $t7, %lo(D_800DDB40)($t7) /* 08B068 8008A468 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08B06C 8008A46C 01C57023 */ subu $t6, $t6, $a1 /* 08B070 8008A470 AFBF0014 */ sw $ra, 0x14($sp) /* 08B074 8008A474 000E70C0 */ sll $t6, $t6, 3 /* 08B078 8008A478 AFA60020 */ sw $a2, 0x20($sp) /* 08B07C 8008A47C AFA40018 */ sw $a0, 0x18($sp) /* 08B080 8008A480 0C02225B */ jal func_8008896C /* 08B084 8008A484 01CF2821 */ addu $a1, $t6, $t7 /* 08B088 8008A488 8FA30020 */ lw $v1, 0x20($sp) /* 08B08C 8008A48C 8FA40018 */ lw $a0, 0x18($sp) /* 08B090 8008A490 00630019 */ multu $v1, $v1 /* 08B094 8008A494 0000C012 */ mflo $t8 /* 08B098 8008A498 0058082B */ sltu $at, $v0, $t8 /* 08B09C 8008A49C 10200005 */ beqz $at, .L8008A4B4 /* 08B0A0 8008A4A0 00000000 */ nop /* 08B0A4 8008A4A4 0C01C870 */ jal func_800721C0 /* 08B0A8 8008A4A8 24050020 */ li $a1, 32 /* 08B0AC 8008A4AC 10000004 */ b .L8008A4C0 /* 08B0B0 8008A4B0 8FBF0014 */ lw $ra, 0x14($sp) .L8008A4B4: /* 08B0B4 8008A4B4 0C01C87A */ jal func_800721E8 /* 08B0B8 8008A4B8 24050020 */ li $a1, 32 /* 08B0BC 8008A4BC 8FBF0014 */ lw $ra, 0x14($sp) .L8008A4C0: /* 08B0C0 8008A4C0 27BD0018 */ addiu $sp, $sp, 0x18 /* 08B0C4 8008A4C4 03E00008 */ jr $ra /* 08B0C8 8008A4C8 00000000 */ nop glabel func_8008A4CC /* 08B0CC 8008A4CC 27BDFFC0 */ addiu $sp, $sp, -0x40 /* 08B0D0 8008A4D0 AFBF003C */ sw $ra, 0x3c($sp) /* 08B0D4 8008A4D4 AFB1001C */ sw $s1, 0x1c($sp) /* 08B0D8 8008A4D8 00808825 */ move $s1, $a0 /* 08B0DC 8008A4DC AFBE0038 */ sw $fp, 0x38($sp) /* 08B0E0 8008A4E0 AFB70034 */ sw $s7, 0x34($sp) /* 08B0E4 8008A4E4 AFB60030 */ sw $s6, 0x30($sp) /* 08B0E8 8008A4E8 AFB5002C */ sw $s5, 0x2c($sp) /* 08B0EC 8008A4EC AFB40028 */ sw $s4, 0x28($sp) /* 08B0F0 8008A4F0 AFB30024 */ sw $s3, 0x24($sp) /* 08B0F4 8008A4F4 AFB20020 */ sw $s2, 0x20($sp) /* 08B0F8 8008A4F8 AFB00018 */ sw $s0, 0x18($sp) /* 08B0FC 8008A4FC 0C01C87A */ jal func_800721E8 /* 08B100 8008A500 3C050007 */ lui $a1, 7 /* 08B104 8008A504 3C0E800E */ lui $t6, %hi(gPlayerCountSelection1) # $t6, 0x800e /* 08B108 8008A508 8DCEC538 */ lw $t6, %lo(gPlayerCountSelection1)($t6) /* 08B10C 8008A50C 3C14800E */ lui $s4, %hi(D_800DDB40) # $s4, 0x800e /* 08B110 8008A510 8E94DB40 */ lw $s4, %lo(D_800DDB40)($s4) /* 08B114 8008A514 19C00032 */ blez $t6, .L8008A5E0 /* 08B118 8008A518 00009025 */ move $s2, $zero /* 08B11C 8008A51C 001178C0 */ sll $t7, $s1, 3 /* 08B120 8008A520 01F17823 */ subu $t7, $t7, $s1 /* 08B124 8008A524 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08B128 8008A528 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08B12C 8008A52C 000F7940 */ sll $t7, $t7, 5 /* 08B130 8008A530 3C158019 */ lui $s5, %hi(D_8018CF68) # $s5, 0x8019 /* 08B134 8008A534 26B5CF68 */ addiu $s5, %lo(D_8018CF68) # addiu $s5, $s5, -0x3098 /* 08B138 8008A538 01F89821 */ addu $s3, $t7, $t8 /* 08B13C 8008A53C 3C1E0004 */ lui $fp, 4 /* 08B140 8008A540 3C170002 */ lui $s7, 2 /* 08B144 8008A544 3C160001 */ lui $s6, 1 /* 08B148 8008A548 867900A6 */ lh $t9, 0xa6($s3) .L8008A54C: /* 08B14C 8008A54C 00124040 */ sll $t0, $s2, 1 /* 08B150 8008A550 02A88021 */ addu $s0, $s5, $t0 /* 08B154 8008A554 1320001B */ beqz $t9, .L8008A5C4 /* 08B158 8008A558 00000000 */ nop /* 08B15C 8008A55C 926300DF */ lbu $v1, 0xdf($s3) /* 08B160 8008A560 86020000 */ lh $v0, ($s0) /* 08B164 8008A564 2469FFFF */ addiu $t1, $v1, -1 /* 08B168 8008A568 0049082A */ slt $at, $v0, $t1 /* 08B16C 8008A56C 14200015 */ bnez $at, .L8008A5C4 /* 08B170 8008A570 246A0001 */ addiu $t2, $v1, 1 /* 08B174 8008A574 0142082A */ slt $at, $t2, $v0 /* 08B178 8008A578 14200012 */ bnez $at, .L8008A5C4 /* 08B17C 8008A57C 02202025 */ move $a0, $s1 /* 08B180 8008A580 0C01C870 */ jal func_800721C0 /* 08B184 8008A584 02C02825 */ move $a1, $s6 /* 08B188 8008A588 860B0000 */ lh $t3, ($s0) /* 08B18C 8008A58C 926C00DF */ lbu $t4, 0xdf($s3) /* 08B190 8008A590 02202025 */ move $a0, $s1 /* 08B194 8008A594 556C0004 */ bnel $t3, $t4, .L8008A5A8 /* 08B198 8008A598 02202025 */ move $a0, $s1 /* 08B19C 8008A59C 0C01C870 */ jal func_800721C0 /* 08B1A0 8008A5A0 02E02825 */ move $a1, $s7 /* 08B1A4 8008A5A4 02202025 */ move $a0, $s1 .L8008A5A8: /* 08B1A8 8008A5A8 02802825 */ move $a1, $s4 /* 08B1AC 8008A5AC 0C022850 */ jal func_8008A140 /* 08B1B0 8008A5B0 24062AAB */ li $a2, 10923 /* 08B1B4 8008A5B4 10400003 */ beqz $v0, .L8008A5C4 /* 08B1B8 8008A5B8 02202025 */ move $a0, $s1 /* 08B1BC 8008A5BC 0C01C870 */ jal func_800721C0 /* 08B1C0 8008A5C0 03C02825 */ move $a1, $fp .L8008A5C4: /* 08B1C4 8008A5C4 3C0D800E */ lui $t5, %hi(gPlayerCountSelection1) # $t5, 0x800e /* 08B1C8 8008A5C8 8DADC538 */ lw $t5, %lo(gPlayerCountSelection1)($t5) /* 08B1CC 8008A5CC 26520001 */ addiu $s2, $s2, 1 /* 08B1D0 8008A5D0 269400B8 */ addiu $s4, $s4, 0xb8 /* 08B1D4 8008A5D4 024D082A */ slt $at, $s2, $t5 /* 08B1D8 8008A5D8 5420FFDC */ bnel $at, $zero, .L8008A54C /* 08B1DC 8008A5DC 867900A6 */ lh $t9, 0xa6($s3) .L8008A5E0: /* 08B1E0 8008A5E0 8FBF003C */ lw $ra, 0x3c($sp) /* 08B1E4 8008A5E4 8FB00018 */ lw $s0, 0x18($sp) /* 08B1E8 8008A5E8 8FB1001C */ lw $s1, 0x1c($sp) /* 08B1EC 8008A5EC 8FB20020 */ lw $s2, 0x20($sp) /* 08B1F0 8008A5F0 8FB30024 */ lw $s3, 0x24($sp) /* 08B1F4 8008A5F4 8FB40028 */ lw $s4, 0x28($sp) /* 08B1F8 8008A5F8 8FB5002C */ lw $s5, 0x2c($sp) /* 08B1FC 8008A5FC 8FB60030 */ lw $s6, 0x30($sp) /* 08B200 8008A600 8FB70034 */ lw $s7, 0x34($sp) /* 08B204 8008A604 8FBE0038 */ lw $fp, 0x38($sp) /* 08B208 8008A608 03E00008 */ jr $ra /* 08B20C 8008A60C 27BD0040 */ addiu $sp, $sp, 0x40 /* 08B210 8008A610 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 08B214 8008A614 AFB40024 */ sw $s4, 0x24($sp) /* 08B218 8008A618 3C140004 */ lui $s4, 4 /* 08B21C 8008A61C AFBF002C */ sw $ra, 0x2c($sp) /* 08B220 8008A620 AFB2001C */ sw $s2, 0x1c($sp) /* 08B224 8008A624 00809025 */ move $s2, $a0 /* 08B228 8008A628 AFB50028 */ sw $s5, 0x28($sp) /* 08B22C 8008A62C AFB30020 */ sw $s3, 0x20($sp) /* 08B230 8008A630 AFB10018 */ sw $s1, 0x18($sp) /* 08B234 8008A634 AFB00014 */ sw $s0, 0x14($sp) /* 08B238 8008A638 0C01C87A */ jal func_800721E8 /* 08B23C 8008A63C 02802825 */ move $a1, $s4 /* 08B240 8008A640 3C15800E */ lui $s5, %hi(gPlayerCountSelection1) # $s5, 0x800e /* 08B244 8008A644 26B5C538 */ addiu $s5, %lo(gPlayerCountSelection1) # addiu $s5, $s5, -0x3ac8 /* 08B248 8008A648 8EAE0000 */ lw $t6, ($s5) /* 08B24C 8008A64C 3C10800E */ lui $s0, %hi(D_800DDB40) # $s0, 0x800e /* 08B250 8008A650 8E10DB40 */ lw $s0, %lo(D_800DDB40)($s0) /* 08B254 8008A654 19C00018 */ blez $t6, .L8008A6B8 /* 08B258 8008A658 00008825 */ move $s1, $zero /* 08B25C 8008A65C 001278C0 */ sll $t7, $s2, 3 /* 08B260 8008A660 01F27823 */ subu $t7, $t7, $s2 /* 08B264 8008A664 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08B268 8008A668 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08B26C 8008A66C 000F7940 */ sll $t7, $t7, 5 /* 08B270 8008A670 01F89821 */ addu $s3, $t7, $t8 /* 08B274 8008A674 867900A6 */ lh $t9, 0xa6($s3) .L8008A678: /* 08B278 8008A678 02402025 */ move $a0, $s2 /* 08B27C 8008A67C 02002825 */ move $a1, $s0 /* 08B280 8008A680 53200008 */ beql $t9, $zero, .L8008A6A4 /* 08B284 8008A684 8EA80000 */ lw $t0, ($s5) /* 08B288 8008A688 0C022850 */ jal func_8008A140 /* 08B28C 8008A68C 24062AAB */ li $a2, 10923 /* 08B290 8008A690 10400003 */ beqz $v0, .L8008A6A0 /* 08B294 8008A694 02402025 */ move $a0, $s2 /* 08B298 8008A698 0C01C870 */ jal func_800721C0 /* 08B29C 8008A69C 02802825 */ move $a1, $s4 .L8008A6A0: /* 08B2A0 8008A6A0 8EA80000 */ lw $t0, ($s5) .L8008A6A4: /* 08B2A4 8008A6A4 26310001 */ addiu $s1, $s1, 1 /* 08B2A8 8008A6A8 261000B8 */ addiu $s0, $s0, 0xb8 /* 08B2AC 8008A6AC 0228082A */ slt $at, $s1, $t0 /* 08B2B0 8008A6B0 5420FFF1 */ bnel $at, $zero, .L8008A678 /* 08B2B4 8008A6B4 867900A6 */ lh $t9, 0xa6($s3) .L8008A6B8: /* 08B2B8 8008A6B8 8FBF002C */ lw $ra, 0x2c($sp) /* 08B2BC 8008A6BC 8FB00014 */ lw $s0, 0x14($sp) /* 08B2C0 8008A6C0 8FB10018 */ lw $s1, 0x18($sp) /* 08B2C4 8008A6C4 8FB2001C */ lw $s2, 0x1c($sp) /* 08B2C8 8008A6C8 8FB30020 */ lw $s3, 0x20($sp) /* 08B2CC 8008A6CC 8FB40024 */ lw $s4, 0x24($sp) /* 08B2D0 8008A6D0 8FB50028 */ lw $s5, 0x28($sp) /* 08B2D4 8008A6D4 03E00008 */ jr $ra /* 08B2D8 8008A6D8 27BD0030 */ addiu $sp, $sp, 0x30 glabel func_8008A6DC /* 08B2DC 8008A6DC 27BDFFB0 */ addiu $sp, $sp, -0x50 /* 08B2E0 8008A6E0 F7B80028 */ sdc1 $f24, 0x28($sp) /* 08B2E4 8008A6E4 4485C000 */ mtc1 $a1, $f24 /* 08B2E8 8008A6E8 AFBF004C */ sw $ra, 0x4c($sp) /* 08B2EC 8008A6EC AFB00030 */ sw $s0, 0x30($sp) /* 08B2F0 8008A6F0 00808025 */ move $s0, $a0 /* 08B2F4 8008A6F4 AFB60048 */ sw $s6, 0x48($sp) /* 08B2F8 8008A6F8 AFB50044 */ sw $s5, 0x44($sp) /* 08B2FC 8008A6FC AFB40040 */ sw $s4, 0x40($sp) /* 08B300 8008A700 AFB3003C */ sw $s3, 0x3c($sp) /* 08B304 8008A704 AFB20038 */ sw $s2, 0x38($sp) /* 08B308 8008A708 AFB10034 */ sw $s1, 0x34($sp) /* 08B30C 8008A70C F7B60020 */ sdc1 $f22, 0x20($sp) /* 08B310 8008A710 F7B40018 */ sdc1 $f20, 0x18($sp) /* 08B314 8008A714 0C01C87A */ jal func_800721E8 /* 08B318 8008A718 3C050006 */ lui $a1, 6 /* 08B31C 8008A71C 3C16800E */ lui $s6, %hi(gPlayerCountSelection1) # $s6, 0x800e /* 08B320 8008A720 26D6C538 */ addiu $s6, %lo(gPlayerCountSelection1) # addiu $s6, $s6, -0x3ac8 /* 08B324 8008A724 8ECE0000 */ lw $t6, ($s6) /* 08B328 8008A728 3C11800E */ lui $s1, %hi(D_800DDB40) # $s1, 0x800e /* 08B32C 8008A72C 8E31DB40 */ lw $s1, %lo(D_800DDB40)($s1) /* 08B330 8008A730 19C0002A */ blez $t6, .L8008A7DC /* 08B334 8008A734 00009025 */ move $s2, $zero /* 08B338 8008A738 001078C0 */ sll $t7, $s0, 3 /* 08B33C 8008A73C 01F07823 */ subu $t7, $t7, $s0 /* 08B340 8008A740 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08B344 8008A744 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08B348 8008A748 000F7940 */ sll $t7, $t7, 5 /* 08B34C 8008A74C 3C01800F */ lui $at, %hi(D_800EF4F0) /* 08B350 8008A750 D436F4F0 */ ldc1 $f22, %lo(D_800EF4F0)($at) /* 08B354 8008A754 01F89821 */ addu $s3, $t7, $t8 /* 08B358 8008A758 3C150004 */ lui $s5, 4 /* 08B35C 8008A75C 3C140002 */ lui $s4, 2 /* 08B360 8008A760 867900A6 */ lh $t9, 0xa6($s3) .L8008A764: /* 08B364 8008A764 02002025 */ move $a0, $s0 /* 08B368 8008A768 53200017 */ beql $t9, $zero, .L8008A7C8 /* 08B36C 8008A76C 8EC80000 */ lw $t0, ($s6) /* 08B370 8008A770 4406C000 */ mfc1 $a2, $f24 /* 08B374 8008A774 0C0222EE */ jal func_80088BB8 /* 08B378 8008A778 02202825 */ move $a1, $s1 /* 08B37C 8008A77C 10400011 */ beqz $v0, .L8008A7C4 /* 08B380 8008A780 02002025 */ move $a0, $s0 /* 08B384 8008A784 02802825 */ move $a1, $s4 /* 08B388 8008A788 0C01C870 */ jal func_800721C0 /* 08B38C 8008A78C 4600C521 */ cvt.d.s $f20, $f24 /* 08B390 8008A790 4636A03E */ c.le.d $f20, $f22 /* 08B394 8008A794 24062AAB */ li $a2, 10923 /* 08B398 8008A798 02002025 */ move $a0, $s0 /* 08B39C 8008A79C 45000003 */ bc1f .L8008A7AC /* 08B3A0 8008A7A0 00000000 */ nop /* 08B3A4 8008A7A4 10000001 */ b .L8008A7AC /* 08B3A8 8008A7A8 24064000 */ li $a2, 16384 .L8008A7AC: /* 08B3AC 8008A7AC 0C022850 */ jal func_8008A140 /* 08B3B0 8008A7B0 02202825 */ move $a1, $s1 /* 08B3B4 8008A7B4 10400003 */ beqz $v0, .L8008A7C4 /* 08B3B8 8008A7B8 02002025 */ move $a0, $s0 /* 08B3BC 8008A7BC 0C01C870 */ jal func_800721C0 /* 08B3C0 8008A7C0 02A02825 */ move $a1, $s5 .L8008A7C4: /* 08B3C4 8008A7C4 8EC80000 */ lw $t0, ($s6) .L8008A7C8: /* 08B3C8 8008A7C8 26520001 */ addiu $s2, $s2, 1 /* 08B3CC 8008A7CC 263100B8 */ addiu $s1, $s1, 0xb8 /* 08B3D0 8008A7D0 0248082A */ slt $at, $s2, $t0 /* 08B3D4 8008A7D4 5420FFE3 */ bnel $at, $zero, .L8008A764 /* 08B3D8 8008A7D8 867900A6 */ lh $t9, 0xa6($s3) .L8008A7DC: /* 08B3DC 8008A7DC 8FBF004C */ lw $ra, 0x4c($sp) /* 08B3E0 8008A7E0 D7B40018 */ ldc1 $f20, 0x18($sp) /* 08B3E4 8008A7E4 D7B60020 */ ldc1 $f22, 0x20($sp) /* 08B3E8 8008A7E8 D7B80028 */ ldc1 $f24, 0x28($sp) /* 08B3EC 8008A7EC 8FB00030 */ lw $s0, 0x30($sp) /* 08B3F0 8008A7F0 8FB10034 */ lw $s1, 0x34($sp) /* 08B3F4 8008A7F4 8FB20038 */ lw $s2, 0x38($sp) /* 08B3F8 8008A7F8 8FB3003C */ lw $s3, 0x3c($sp) /* 08B3FC 8008A7FC 8FB40040 */ lw $s4, 0x40($sp) /* 08B400 8008A800 8FB50044 */ lw $s5, 0x44($sp) /* 08B404 8008A804 8FB60048 */ lw $s6, 0x48($sp) /* 08B408 8008A808 03E00008 */ jr $ra /* 08B40C 8008A80C 27BD0050 */ addiu $sp, $sp, 0x50 /* 08B410 8008A810 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08B414 8008A814 AFBF0014 */ sw $ra, 0x14($sp) /* 08B418 8008A818 0C0229B7 */ jal func_8008A6DC /* 08B41C 8008A81C 3C0543FA */ lui $a1, 0x43fa /* 08B420 8008A820 8FBF0014 */ lw $ra, 0x14($sp) /* 08B424 8008A824 27BD0018 */ addiu $sp, $sp, 0x18 /* 08B428 8008A828 03E00008 */ jr $ra /* 08B42C 8008A82C 00000000 */ nop /* 08B430 8008A830 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08B434 8008A834 AFBF0014 */ sw $ra, 0x14($sp) /* 08B438 8008A838 0C0229B7 */ jal func_8008A6DC /* 08B43C 8008A83C 3C05447A */ lui $a1, 0x447a /* 08B440 8008A840 8FBF0014 */ lw $ra, 0x14($sp) /* 08B444 8008A844 27BD0018 */ addiu $sp, $sp, 0x18 /* 08B448 8008A848 03E00008 */ jr $ra /* 08B44C 8008A84C 00000000 */ nop /* 08B450 8008A850 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08B454 8008A854 AFBF0014 */ sw $ra, 0x14($sp) /* 08B458 8008A858 0C0229B7 */ jal func_8008A6DC /* 08B45C 8008A85C 3C0544FA */ lui $a1, 0x44fa /* 08B460 8008A860 8FBF0014 */ lw $ra, 0x14($sp) /* 08B464 8008A864 27BD0018 */ addiu $sp, $sp, 0x18 /* 08B468 8008A868 03E00008 */ jr $ra /* 08B46C 8008A86C 00000000 */ nop /* 08B470 8008A870 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08B474 8008A874 AFBF0014 */ sw $ra, 0x14($sp) /* 08B478 8008A878 0C0AAF50 */ jal func_802ABD40 /* 08B47C 8008A87C 9484011A */ lhu $a0, 0x11a($a0) /* 08B480 8008A880 8FBF0014 */ lw $ra, 0x14($sp) /* 08B484 8008A884 27BD0018 */ addiu $sp, $sp, 0x18 /* 08B488 8008A888 03E00008 */ jr $ra /* 08B48C 8008A88C 00000000 */ nop glabel func_8008A890 /* 08B490 8008A890 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08B494 8008A894 AFBF0014 */ sw $ra, 0x14($sp) /* 08B498 8008A898 0C0AAF50 */ jal func_802ABD40 /* 08B49C 8008A89C 9484005E */ lhu $a0, 0x5e($a0) /* 08B4A0 8008A8A0 8FBF0014 */ lw $ra, 0x14($sp) /* 08B4A4 8008A8A4 27BD0018 */ addiu $sp, $sp, 0x18 /* 08B4A8 8008A8A8 03E00008 */ jr $ra /* 08B4AC 8008A8AC 00000000 */ nop glabel func_8008A8B0 /* 08B4B0 8008A8B0 3C06800E */ lui $a2, %hi(gPlayerCountSelection1) # $a2, 0x800e /* 08B4B4 8008A8B4 8CC6C538 */ lw $a2, %lo(gPlayerCountSelection1)($a2) /* 08B4B8 8008A8B8 00043C00 */ sll $a3, $a0, 0x10 /* 08B4BC 8008A8BC 00077403 */ sra $t6, $a3, 0x10 /* 08B4C0 8008A8C0 AFA50004 */ sw $a1, 4($sp) /* 08B4C4 8008A8C4 00057C00 */ sll $t7, $a1, 0x10 /* 08B4C8 8008A8C8 000F2C03 */ sra $a1, $t7, 0x10 /* 08B4CC 8008A8CC 01C03825 */ move $a3, $t6 /* 08B4D0 8008A8D0 AFA40000 */ sw $a0, ($sp) /* 08B4D4 8008A8D4 18C00010 */ blez $a2, .L8008A918 /* 08B4D8 8008A8D8 00001825 */ move $v1, $zero /* 08B4DC 8008A8DC 3C198019 */ lui $t9, %hi(D_8018CF68) # 0x8019 /* 08B4E0 8008A8E0 2722CF68 */ addiu $v0, $t9, %lo(D_8018CF68) # -0x3098 /* 08B4E4 8008A8E4 00064840 */ sll $t1, $a2, 1 /* 08B4E8 8008A8E8 01224021 */ addu $t0, $t1, $v0 /* 08B4EC 8008A8EC 84440000 */ lh $a0, ($v0) .L8008A8F0: /* 08B4F0 8008A8F0 24420002 */ addiu $v0, $v0, 2 /* 08B4F4 8008A8F4 0087082A */ slt $at, $a0, $a3 /* 08B4F8 8008A8F8 14200004 */ bnez $at, .L8008A90C /* 08B4FC 8008A8FC 00A4082A */ slt $at, $a1, $a0 /* 08B500 8008A900 54200003 */ bnel $at, $zero, .L8008A910 /* 08B504 8008A904 0048082B */ sltu $at, $v0, $t0 /* 08B508 8008A908 24030001 */ li $v1, 1 .L8008A90C: /* 08B50C 8008A90C 0048082B */ sltu $at, $v0, $t0 .L8008A910: /* 08B510 8008A910 5420FFF7 */ bnel $at, $zero, .L8008A8F0 /* 08B514 8008A914 84440000 */ lh $a0, ($v0) .L8008A918: /* 08B518 8008A918 03E00008 */ jr $ra /* 08B51C 8008A91C 00601025 */ move $v0, $v1 glabel func_8008A920 /* 08B520 8008A920 000470C0 */ sll $t6, $a0, 3 /* 08B524 8008A924 01C47023 */ subu $t6, $t6, $a0 /* 08B528 8008A928 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08B52C 8008A92C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08B530 8008A930 000E7140 */ sll $t6, $t6, 5 /* 08B534 8008A934 01CF1821 */ addu $v1, $t6, $t7 /* 08B538 8008A938 8C62007C */ lw $v0, 0x7c($v1) /* 08B53C 8008A93C 84580008 */ lh $t8, 8($v0) /* 08B540 8008A940 84590000 */ lh $t9, ($v0) /* 08B544 8008A944 84490006 */ lh $t1, 6($v0) /* 08B548 8008A948 03194023 */ subu $t0, $t8, $t9 /* 08B54C 8008A94C 44882000 */ mtc1 $t0, $f4 /* 08B550 8008A950 44894000 */ mtc1 $t1, $f8 /* 08B554 8008A954 468021A0 */ cvt.s.w $f6, $f4 /* 08B558 8008A958 468042A0 */ cvt.s.w $f10, $f8 /* 08B55C 8008A95C 460A3403 */ div.s $f16, $f6, $f10 /* 08B560 8008A960 E4700038 */ swc1 $f16, 0x38($v1) /* 08B564 8008A964 844B0002 */ lh $t3, 2($v0) /* 08B568 8008A968 844A000A */ lh $t2, 0xa($v0) /* 08B56C 8008A96C 844D0006 */ lh $t5, 6($v0) /* 08B570 8008A970 014B6023 */ subu $t4, $t2, $t3 /* 08B574 8008A974 448C9000 */ mtc1 $t4, $f18 /* 08B578 8008A978 448D4000 */ mtc1 $t5, $f8 /* 08B57C 8008A97C 46809120 */ cvt.s.w $f4, $f18 /* 08B580 8008A980 468041A0 */ cvt.s.w $f6, $f8 /* 08B584 8008A984 46062283 */ div.s $f10, $f4, $f6 /* 08B588 8008A988 E46A003C */ swc1 $f10, 0x3c($v1) /* 08B58C 8008A98C 844F0004 */ lh $t7, 4($v0) /* 08B590 8008A990 844E000C */ lh $t6, 0xc($v0) /* 08B594 8008A994 84590006 */ lh $t9, 6($v0) /* 08B598 8008A998 01CFC023 */ subu $t8, $t6, $t7 /* 08B59C 8008A99C 44988000 */ mtc1 $t8, $f16 /* 08B5A0 8008A9A0 44994000 */ mtc1 $t9, $f8 /* 08B5A4 8008A9A4 468084A0 */ cvt.s.w $f18, $f16 /* 08B5A8 8008A9A8 46804120 */ cvt.s.w $f4, $f8 /* 08B5AC 8008A9AC 46049183 */ div.s $f6, $f18, $f4 /* 08B5B0 8008A9B0 03E00008 */ jr $ra /* 08B5B4 8008A9B4 E4660040 */ swc1 $f6, 0x40($v1) glabel func_8008A9B8 /* 08B5B8 8008A9B8 000470C0 */ sll $t6, $a0, 3 /* 08B5BC 8008A9BC 01C47023 */ subu $t6, $t6, $a0 /* 08B5C0 8008A9C0 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08B5C4 8008A9C4 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08B5C8 8008A9C8 000E7140 */ sll $t6, $t6, 5 /* 08B5CC 8008A9CC 01CF1021 */ addu $v0, $t6, $t7 /* 08B5D0 8008A9D0 8C58007C */ lw $t8, 0x7c($v0) /* 08B5D4 8008A9D4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08B5D8 8008A9D8 AFBF0014 */ sw $ra, 0x14($sp) /* 08B5DC 8008A9DC 27190008 */ addiu $t9, $t8, 8 /* 08B5E0 8008A9E0 AC59007C */ sw $t9, 0x7c($v0) /* 08B5E4 8008A9E4 87290006 */ lh $t1, 6($t9) /* 08B5E8 8008A9E8 240A2710 */ li $t2, 10000 /* 08B5EC 8008A9EC 03204025 */ move $t0, $t9 /* 08B5F0 8008A9F0 0149001A */ div $zero, $t2, $t1 /* 08B5F4 8008A9F4 00005812 */ mflo $t3 /* 08B5F8 8008A9F8 A44B009A */ sh $t3, 0x9a($v0) /* 08B5FC 8008A9FC 15200002 */ bnez $t1, .L8008AA08 /* 08B600 8008AA00 00000000 */ nop /* 08B604 8008AA04 0007000D */ break 7 .L8008AA08: /* 08B608 8008AA08 2401FFFF */ li $at, -1 /* 08B60C 8008AA0C 15210004 */ bne $t1, $at, .L8008AA20 /* 08B610 8008AA10 3C018000 */ lui $at, 0x8000 /* 08B614 8008AA14 15410002 */ bne $t2, $at, .L8008AA20 /* 08B618 8008AA18 00000000 */ nop /* 08B61C 8008AA1C 0006000D */ break 6 .L8008AA20: /* 08B620 8008AA20 A4400098 */ sh $zero, 0x98($v0) /* 08B624 8008AA24 0C022A48 */ jal func_8008A920 /* 08B628 8008AA28 00000000 */ nop /* 08B62C 8008AA2C 8FBF0014 */ lw $ra, 0x14($sp) /* 08B630 8008AA30 27BD0018 */ addiu $sp, $sp, 0x18 /* 08B634 8008AA34 03E00008 */ jr $ra /* 08B638 8008AA38 00000000 */ nop glabel func_8008AA3C /* 08B63C 8008AA3C 000470C0 */ sll $t6, $a0, 3 /* 08B640 8008AA40 01C47023 */ subu $t6, $t6, $a0 /* 08B644 8008AA44 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08B648 8008AA48 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08B64C 8008AA4C 000E7140 */ sll $t6, $t6, 5 /* 08B650 8008AA50 01CF1021 */ addu $v0, $t6, $t7 /* 08B654 8008AA54 8C430080 */ lw $v1, 0x80($v0) /* 08B658 8008AA58 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08B65C 8008AA5C AFBF0014 */ sw $ra, 0x14($sp) /* 08B660 8008AA60 24630002 */ addiu $v1, $v1, 2 /* 08B664 8008AA64 AC43007C */ sw $v1, 0x7c($v0) /* 08B668 8008AA68 A4400096 */ sh $zero, 0x96($v0) /* 08B66C 8008AA6C A4400098 */ sh $zero, 0x98($v0) /* 08B670 8008AA70 8478FFFE */ lh $t8, -2($v1) /* 08B674 8008AA74 240B2710 */ li $t3, 10000 /* 08B678 8008AA78 A4580094 */ sh $t8, 0x94($v0) /* 08B67C 8008AA7C 84790000 */ lh $t9, ($v1) /* 08B680 8008AA80 44992000 */ mtc1 $t9, $f4 /* 08B684 8008AA84 00000000 */ nop /* 08B688 8008AA88 468021A0 */ cvt.s.w $f6, $f4 /* 08B68C 8008AA8C E4460028 */ swc1 $f6, 0x28($v0) /* 08B690 8008AA90 84680002 */ lh $t0, 2($v1) /* 08B694 8008AA94 44884000 */ mtc1 $t0, $f8 /* 08B698 8008AA98 00000000 */ nop /* 08B69C 8008AA9C 468042A0 */ cvt.s.w $f10, $f8 /* 08B6A0 8008AAA0 E44A002C */ swc1 $f10, 0x2c($v0) /* 08B6A4 8008AAA4 84690004 */ lh $t1, 4($v1) /* 08B6A8 8008AAA8 44898000 */ mtc1 $t1, $f16 /* 08B6AC 8008AAAC 00000000 */ nop /* 08B6B0 8008AAB0 468084A0 */ cvt.s.w $f18, $f16 /* 08B6B4 8008AAB4 E4520030 */ swc1 $f18, 0x30($v0) /* 08B6B8 8008AAB8 846A0006 */ lh $t2, 6($v1) /* 08B6BC 8008AABC AFA40018 */ sw $a0, 0x18($sp) /* 08B6C0 8008AAC0 016A001A */ div $zero, $t3, $t2 /* 08B6C4 8008AAC4 00006012 */ mflo $t4 /* 08B6C8 8008AAC8 A44C009A */ sh $t4, 0x9a($v0) /* 08B6CC 8008AACC 15400002 */ bnez $t2, .L8008AAD8 /* 08B6D0 8008AAD0 00000000 */ nop /* 08B6D4 8008AAD4 0007000D */ break 7 .L8008AAD8: /* 08B6D8 8008AAD8 2401FFFF */ li $at, -1 /* 08B6DC 8008AADC 15410004 */ bne $t2, $at, .L8008AAF0 /* 08B6E0 8008AAE0 3C018000 */ lui $at, 0x8000 /* 08B6E4 8008AAE4 15610002 */ bne $t3, $at, .L8008AAF0 /* 08B6E8 8008AAE8 00000000 */ nop /* 08B6EC 8008AAEC 0006000D */ break 6 .L8008AAF0: /* 08B6F0 8008AAF0 0C022A48 */ jal func_8008A920 /* 08B6F4 8008AAF4 00000000 */ nop /* 08B6F8 8008AAF8 0C021BF5 */ jal func_80086FD4 /* 08B6FC 8008AAFC 8FA40018 */ lw $a0, 0x18($sp) /* 08B700 8008AB00 8FBF0014 */ lw $ra, 0x14($sp) /* 08B704 8008AB04 27BD0018 */ addiu $sp, $sp, 0x18 /* 08B708 8008AB08 03E00008 */ jr $ra /* 08B70C 8008AB0C 00000000 */ nop glabel func_8008AB10 /* 08B710 8008AB10 000470C0 */ sll $t6, $a0, 3 /* 08B714 8008AB14 01C47023 */ subu $t6, $t6, $a0 /* 08B718 8008AB18 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08B71C 8008AB1C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08B720 8008AB20 000E7140 */ sll $t6, $t6, 5 /* 08B724 8008AB24 01CF1021 */ addu $v0, $t6, $t7 /* 08B728 8008AB28 C4440028 */ lwc1 $f4, 0x28($v0) /* 08B72C 8008AB2C C4460038 */ lwc1 $f6, 0x38($v0) /* 08B730 8008AB30 C44A002C */ lwc1 $f10, 0x2c($v0) /* 08B734 8008AB34 C450003C */ lwc1 $f16, 0x3c($v0) /* 08B738 8008AB38 46062200 */ add.s $f8, $f4, $f6 /* 08B73C 8008AB3C C4460040 */ lwc1 $f6, 0x40($v0) /* 08B740 8008AB40 C4440030 */ lwc1 $f4, 0x30($v0) /* 08B744 8008AB44 94580098 */ lhu $t8, 0x98($v0) /* 08B748 8008AB48 9459009A */ lhu $t9, 0x9a($v0) /* 08B74C 8008AB4C E4480028 */ swc1 $f8, 0x28($v0) /* 08B750 8008AB50 46105480 */ add.s $f18, $f10, $f16 /* 08B754 8008AB54 03194021 */ addu $t0, $t8, $t9 /* 08B758 8008AB58 3109FFFF */ andi $t1, $t0, 0xffff /* 08B75C 8008AB5C 46062200 */ add.s $f8, $f4, $f6 /* 08B760 8008AB60 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08B764 8008AB64 29212710 */ slti $at, $t1, 0x2710 /* 08B768 8008AB68 AFBF0014 */ sw $ra, 0x14($sp) /* 08B76C 8008AB6C E452002C */ swc1 $f18, 0x2c($v0) /* 08B770 8008AB70 E4480030 */ swc1 $f8, 0x30($v0) /* 08B774 8008AB74 1420000E */ bnez $at, .L8008ABB0 /* 08B778 8008AB78 A4480098 */ sh $t0, 0x98($v0) /* 08B77C 8008AB7C 944A0096 */ lhu $t2, 0x96($v0) /* 08B780 8008AB80 944E0094 */ lhu $t6, 0x94($v0) /* 08B784 8008AB84 254B0001 */ addiu $t3, $t2, 1 /* 08B788 8008AB88 316CFFFF */ andi $t4, $t3, 0xffff /* 08B78C 8008AB8C 258D0001 */ addiu $t5, $t4, 1 /* 08B790 8008AB90 15AE0005 */ bne $t5, $t6, .L8008ABA8 /* 08B794 8008AB94 A44B0096 */ sh $t3, 0x96($v0) /* 08B798 8008AB98 844F00AE */ lh $t7, 0xae($v0) /* 08B79C 8008AB9C 25F80001 */ addiu $t8, $t7, 1 /* 08B7A0 8008ABA0 10000003 */ b .L8008ABB0 /* 08B7A4 8008ABA4 A45800AE */ sh $t8, 0xae($v0) .L8008ABA8: /* 08B7A8 8008ABA8 0C022A6E */ jal func_8008A9B8 /* 08B7AC 8008ABAC 00000000 */ nop .L8008ABB0: /* 08B7B0 8008ABB0 8FBF0014 */ lw $ra, 0x14($sp) /* 08B7B4 8008ABB4 27BD0018 */ addiu $sp, $sp, 0x18 /* 08B7B8 8008ABB8 03E00008 */ jr $ra /* 08B7BC 8008ABBC 00000000 */ nop /* 08B7C0 8008ABC0 000470C0 */ sll $t6, $a0, 3 /* 08B7C4 8008ABC4 01C47023 */ subu $t6, $t6, $a0 /* 08B7C8 8008ABC8 000E7140 */ sll $t6, $t6, 5 /* 08B7CC 8008ABCC 3C028016 */ lui $v0, %hi(D_80165CC6) # 0x8016 /* 08B7D0 8008ABD0 004E1021 */ addu $v0, $v0, $t6 /* 08B7D4 8008ABD4 84425CC6 */ lh $v0, %lo(D_80165CC6)($v0) # 0x5cc6($v0) /* 08B7D8 8008ABD8 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08B7DC 8008ABDC AFBF0014 */ sw $ra, 0x14($sp) /* 08B7E0 8008ABE0 10400013 */ beqz $v0, .L8008AC30 /* 08B7E4 8008ABE4 24010001 */ li $at, 1 /* 08B7E8 8008ABE8 10410007 */ beq $v0, $at, .L8008AC08 /* 08B7EC 8008ABEC 24010002 */ li $at, 2 /* 08B7F0 8008ABF0 10410009 */ beq $v0, $at, .L8008AC18 /* 08B7F4 8008ABF4 24010003 */ li $at, 3 /* 08B7F8 8008ABF8 1041000B */ beq $v0, $at, .L8008AC28 /* 08B7FC 8008ABFC 00000000 */ nop /* 08B800 8008AC00 1000000C */ b .L8008AC34 /* 08B804 8008AC04 8FBF0014 */ lw $ra, 0x14($sp) .L8008AC08: /* 08B808 8008AC08 0C022A8F */ jal func_8008AA3C /* 08B80C 8008AC0C 00000000 */ nop /* 08B810 8008AC10 10000008 */ b .L8008AC34 /* 08B814 8008AC14 8FBF0014 */ lw $ra, 0x14($sp) .L8008AC18: /* 08B818 8008AC18 0C022AC4 */ jal func_8008AB10 /* 08B81C 8008AC1C 00000000 */ nop /* 08B820 8008AC20 10000004 */ b .L8008AC34 /* 08B824 8008AC24 8FBF0014 */ lw $ra, 0x14($sp) .L8008AC28: /* 08B828 8008AC28 0C021BD8 */ jal func_80086F60 /* 08B82C 8008AC2C 00000000 */ nop .L8008AC30: /* 08B830 8008AC30 8FBF0014 */ lw $ra, 0x14($sp) .L8008AC34: /* 08B834 8008AC34 27BD0018 */ addiu $sp, $sp, 0x18 /* 08B838 8008AC38 03E00008 */ jr $ra /* 08B83C 8008AC3C 00000000 */ nop /* 08B840 8008AC40 000470C0 */ sll $t6, $a0, 3 /* 08B844 8008AC44 01C47023 */ subu $t6, $t6, $a0 /* 08B848 8008AC48 000E7140 */ sll $t6, $t6, 5 /* 08B84C 8008AC4C 3C028016 */ lui $v0, %hi(D_80165CC6) # 0x8016 /* 08B850 8008AC50 004E1021 */ addu $v0, $v0, $t6 /* 08B854 8008AC54 84425CC6 */ lh $v0, %lo(D_80165CC6)($v0) # 0x5cc6($v0) /* 08B858 8008AC58 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08B85C 8008AC5C AFBF0014 */ sw $ra, 0x14($sp) /* 08B860 8008AC60 10400013 */ beqz $v0, .L8008ACB0 /* 08B864 8008AC64 24010001 */ li $at, 1 /* 08B868 8008AC68 10410007 */ beq $v0, $at, .L8008AC88 /* 08B86C 8008AC6C 24010002 */ li $at, 2 /* 08B870 8008AC70 10410009 */ beq $v0, $at, .L8008AC98 /* 08B874 8008AC74 24010003 */ li $at, 3 /* 08B878 8008AC78 1041000B */ beq $v0, $at, .L8008ACA8 /* 08B87C 8008AC7C 00000000 */ nop /* 08B880 8008AC80 1000000C */ b .L8008ACB4 /* 08B884 8008AC84 8FBF0014 */ lw $ra, 0x14($sp) .L8008AC88: /* 08B888 8008AC88 0C022A8F */ jal func_8008AA3C /* 08B88C 8008AC8C 00000000 */ nop /* 08B890 8008AC90 10000008 */ b .L8008ACB4 /* 08B894 8008AC94 8FBF0014 */ lw $ra, 0x14($sp) .L8008AC98: /* 08B898 8008AC98 0C022AC4 */ jal func_8008AB10 /* 08B89C 8008AC9C 00000000 */ nop /* 08B8A0 8008ACA0 10000004 */ b .L8008ACB4 /* 08B8A4 8008ACA4 8FBF0014 */ lw $ra, 0x14($sp) .L8008ACA8: /* 08B8A8 8008ACA8 0C021C07 */ jal func_8008701C /* 08B8AC 8008ACAC 24050001 */ li $a1, 1 .L8008ACB0: /* 08B8B0 8008ACB0 8FBF0014 */ lw $ra, 0x14($sp) .L8008ACB4: /* 08B8B4 8008ACB4 27BD0018 */ addiu $sp, $sp, 0x18 /* 08B8B8 8008ACB8 03E00008 */ jr $ra /* 08B8BC 8008ACBC 00000000 */ nop /* 08B8C0 8008ACC0 03E00008 */ jr $ra /* 08B8C4 8008ACC4 00000000 */ nop /* 08B8C8 8008ACC8 03E00008 */ jr $ra /* 08B8CC 8008ACCC 00000000 */ nop /* 08B8D0 8008ACD0 03E00008 */ jr $ra /* 08B8D4 8008ACD4 00000000 */ nop /* 08B8D8 8008ACD8 03E00008 */ jr $ra /* 08B8DC 8008ACDC 00000000 */ nop glabel func_8008ACE0 /* 08B8E0 8008ACE0 44856000 */ mtc1 $a1, $f12 /* 08B8E4 8008ACE4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 /* 08B8E8 8008ACE8 44812800 */ mtc1 $at, $f5 /* 08B8EC 8008ACEC 44802000 */ mtc1 $zero, $f4 /* 08B8F0 8008ACF0 46006021 */ cvt.d.s $f0, $f12 /* 08B8F4 8008ACF4 3C014018 */ li $at, 0x40180000 # 2.375000 /* 08B8F8 8008ACF8 46202181 */ sub.d $f6, $f4, $f0 /* 08B8FC 8008ACFC 462030A0 */ cvt.s.d $f2, $f6 /* 08B900 8008AD00 44803000 */ mtc1 $zero, $f6 /* 08B904 8008AD04 44813800 */ mtc1 $at, $f7 /* 08B908 8008AD08 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 /* 08B90C 8008AD0C 46021202 */ mul.s $f8, $f2, $f2 /* 08B910 8008AD10 00000000 */ nop /* 08B914 8008AD14 46024282 */ mul.s $f10, $f8, $f2 /* 08B918 8008AD18 46005121 */ cvt.d.s $f4, $f10 /* 08B91C 8008AD1C 460C6382 */ mul.s $f14, $f12, $f12 /* 08B920 8008AD20 46262203 */ div.d $f8, $f4, $f6 /* 08B924 8008AD24 44803000 */ mtc1 $zero, $f6 /* 08B928 8008AD28 44813800 */ mtc1 $at, $f7 /* 08B92C 8008AD2C 3C01800F */ lui $at, %hi(D_800EF4F8) /* 08B930 8008AD30 460C7102 */ mul.s $f4, $f14, $f12 /* 08B934 8008AD34 460074A1 */ cvt.d.s $f18, $f14 /* 08B938 8008AD38 46002421 */ cvt.d.s $f16, $f4 /* 08B93C 8008AD3C 462042A0 */ cvt.s.d $f10, $f8 /* 08B940 8008AD40 46268202 */ mul.d $f8, $f16, $f6 /* 08B944 8008AD44 E48A0000 */ swc1 $f10, ($a0) /* 08B948 8008AD48 D424F4F8 */ ldc1 $f4, %lo(D_800EF4F8)($at) /* 08B94C 8008AD4C 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 /* 08B950 8008AD50 46324281 */ sub.d $f10, $f8, $f18 /* 08B954 8008AD54 46245180 */ add.d $f6, $f10, $f4 /* 08B958 8008AD58 44805000 */ mtc1 $zero, $f10 /* 08B95C 8008AD5C 44815800 */ mtc1 $at, $f11 /* 08B960 8008AD60 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 /* 08B964 8008AD64 46203220 */ cvt.s.d $f8, $f6 /* 08B968 8008AD68 462A8102 */ mul.d $f4, $f16, $f10 /* 08B96C 8008AD6C 44803000 */ mtc1 $zero, $f6 /* 08B970 8008AD70 44813800 */ mtc1 $at, $f7 /* 08B974 8008AD74 E4880004 */ swc1 $f8, 4($a0) /* 08B978 8008AD78 46323202 */ mul.d $f8, $f6, $f18 /* 08B97C 8008AD7C 44803000 */ mtc1 $zero, $f6 /* 08B980 8008AD80 44813800 */ mtc1 $at, $f7 /* 08B984 8008AD84 3C01800F */ lui $at, %hi(D_800EF500) /* 08B988 8008AD88 46282280 */ add.d $f10, $f4, $f8 /* 08B98C 8008AD8C 46203102 */ mul.d $f4, $f6, $f0 /* 08B990 8008AD90 D426F500 */ ldc1 $f6, %lo(D_800EF500)($at) /* 08B994 8008AD94 3C014018 */ li $at, 0x40180000 # 2.375000 /* 08B998 8008AD98 46245200 */ add.d $f8, $f10, $f4 /* 08B99C 8008AD9C 46264280 */ add.d $f10, $f8, $f6 /* 08B9A0 8008ADA0 44804000 */ mtc1 $zero, $f8 /* 08B9A4 8008ADA4 44814800 */ mtc1 $at, $f9 /* 08B9A8 8008ADA8 46205120 */ cvt.s.d $f4, $f10 /* 08B9AC 8008ADAC 46288183 */ div.d $f6, $f16, $f8 /* 08B9B0 8008ADB0 E4840008 */ swc1 $f4, 8($a0) /* 08B9B4 8008ADB4 462032A0 */ cvt.s.d $f10, $f6 /* 08B9B8 8008ADB8 03E00008 */ jr $ra /* 08B9BC 8008ADBC E48A000C */ swc1 $f10, 0xc($a0) /* 08B9C0 8008ADC0 03E00008 */ jr $ra /* 08B9C4 8008ADC4 00000000 */ nop /* 08B9C8 8008ADC8 03E00008 */ jr $ra /* 08B9CC 8008ADCC 00000000 */ nop glabel func_8008ADD0 /* 08B9D0 8008ADD0 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 /* 08B9D4 8008ADD4 44819800 */ mtc1 $at, $f19 /* 08B9D8 8008ADD8 44856000 */ mtc1 $a1, $f12 /* 08B9DC 8008ADDC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 /* 08B9E0 8008ADE0 44812800 */ mtc1 $at, $f5 /* 08B9E4 8008ADE4 44802000 */ mtc1 $zero, $f4 /* 08B9E8 8008ADE8 46006021 */ cvt.d.s $f0, $f12 /* 08B9EC 8008ADEC 44809000 */ mtc1 $zero, $f18 /* 08B9F0 8008ADF0 46202181 */ sub.d $f6, $f4, $f0 /* 08B9F4 8008ADF4 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 /* 08B9F8 8008ADF8 46200400 */ add.d $f16, $f0, $f0 /* 08B9FC 8008ADFC 46203220 */ cvt.s.d $f8, $f6 /* 08BA00 8008AE00 460040A1 */ cvt.d.s $f2, $f8 /* 08BA04 8008AE04 46321282 */ mul.d $f10, $f2, $f18 /* 08BA08 8008AE08 00000000 */ nop /* 08BA0C 8008AE0C 46225102 */ mul.d $f4, $f10, $f2 /* 08BA10 8008AE10 44805000 */ mtc1 $zero, $f10 /* 08BA14 8008AE14 44815800 */ mtc1 $at, $f11 /* 08BA18 8008AE18 3C014008 */ li $at, 0x40080000 # 2.125000 /* 08BA1C 8008AE1C 460C6202 */ mul.s $f8, $f12, $f12 /* 08BA20 8008AE20 462021A0 */ cvt.s.d $f6, $f4 /* 08BA24 8008AE24 460043A1 */ cvt.d.s $f14, $f8 /* 08BA28 8008AE28 E4860000 */ swc1 $f6, ($a0) /* 08BA2C 8008AE2C 462A7102 */ mul.d $f4, $f14, $f10 /* 08BA30 8008AE30 44805000 */ mtc1 $zero, $f10 /* 08BA34 8008AE34 44815800 */ mtc1 $at, $f11 /* 08BA38 8008AE38 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 /* 08BA3C 8008AE3C 46302181 */ sub.d $f6, $f4, $f16 /* 08BA40 8008AE40 462A7102 */ mul.d $f4, $f14, $f10 /* 08BA44 8008AE44 46203220 */ cvt.s.d $f8, $f6 /* 08BA48 8008AE48 44814800 */ mtc1 $at, $f9 /* 08BA4C 8008AE4C 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 /* 08BA50 8008AE50 46302181 */ sub.d $f6, $f4, $f16 /* 08BA54 8008AE54 E4880004 */ swc1 $f8, 4($a0) /* 08BA58 8008AE58 44804000 */ mtc1 $zero, $f8 /* 08BA5C 8008AE5C 00000000 */ nop /* 08BA60 8008AE60 46283281 */ sub.d $f10, $f6, $f8 /* 08BA64 8008AE64 44804000 */ mtc1 $zero, $f8 /* 08BA68 8008AE68 44814800 */ mtc1 $at, $f9 /* 08BA6C 8008AE6C 46325102 */ mul.d $f4, $f10, $f18 /* 08BA70 8008AE70 00000000 */ nop /* 08BA74 8008AE74 46287282 */ mul.d $f10, $f14, $f8 /* 08BA78 8008AE78 462021A0 */ cvt.s.d $f6, $f4 /* 08BA7C 8008AE7C 46205120 */ cvt.s.d $f4, $f10 /* 08BA80 8008AE80 E4860008 */ swc1 $f6, 8($a0) /* 08BA84 8008AE84 03E00008 */ jr $ra /* 08BA88 8008AE88 E484000C */ swc1 $f4, 0xc($a0) /* 08BA8C 8008AE8C 03E00008 */ jr $ra /* 08BA90 8008AE90 00000000 */ nop /* 08BA94 8008AE94 03E00008 */ jr $ra /* 08BA98 8008AE98 00000000 */ nop glabel func_8008AE9C /* 08BA9C 8008AE9C 3C038016 */ lui $v1, %hi(D_80165760) # $v1, 0x8016 /* 08BAA0 8008AEA0 24635760 */ addiu $v1, %lo(D_80165760) # addiu $v1, $v1, 0x5760 /* 08BAA4 8008AEA4 84780000 */ lh $t8, ($v1) /* 08BAA8 8008AEA8 84790002 */ lh $t9, 2($v1) /* 08BAAC 8008AEAC 3C058018 */ lui $a1, %hi(D_80183DC8) # $a1, 0x8018 /* 08BAB0 8008AEB0 44982000 */ mtc1 $t8, $f4 /* 08BAB4 8008AEB4 44995000 */ mtc1 $t9, $f10 /* 08BAB8 8008AEB8 24A53DC8 */ addiu $a1, %lo(D_80183DC8) # addiu $a1, $a1, 0x3dc8 /* 08BABC 8008AEBC 468021A0 */ cvt.s.w $f6, $f4 /* 08BAC0 8008AEC0 C4A20000 */ lwc1 $f2, ($a1) /* 08BAC4 8008AEC4 C4AC0004 */ lwc1 $f12, 4($a1) /* 08BAC8 8008AEC8 84680004 */ lh $t0, 4($v1) /* 08BACC 8008AECC 84690006 */ lh $t1, 6($v1) /* 08BAD0 8008AED0 46805420 */ cvt.s.w $f16, $f10 /* 08BAD4 8008AED4 46061202 */ mul.s $f8, $f2, $f6 /* 08BAD8 8008AED8 44883000 */ mtc1 $t0, $f6 /* 08BADC 8008AEDC C4AE0008 */ lwc1 $f14, 8($a1) /* 08BAE0 8008AEE0 C4A0000C */ lwc1 $f0, 0xc($a1) /* 08BAE4 8008AEE4 3C068016 */ lui $a2, %hi(D_80165770) # $a2, 0x8016 /* 08BAE8 8008AEE8 46106482 */ mul.s $f18, $f12, $f16 /* 08BAEC 8008AEEC 24C65770 */ addiu $a2, %lo(D_80165770) # addiu $a2, $a2, 0x5770 /* 08BAF0 8008AEF0 84CA0000 */ lh $t2, ($a2) /* 08BAF4 8008AEF4 84CB0002 */ lh $t3, 2($a2) /* 08BAF8 8008AEF8 000470C0 */ sll $t6, $a0, 3 /* 08BAFC 8008AEFC 01C47023 */ subu $t6, $t6, $a0 /* 08BB00 8008AF00 468032A0 */ cvt.s.w $f10, $f6 /* 08BB04 8008AF04 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08BB08 8008AF08 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08BB0C 8008AF0C 000E7140 */ sll $t6, $t6, 5 /* 08BB10 8008AF10 01CF1021 */ addu $v0, $t6, $t7 /* 08BB14 8008AF14 46124100 */ add.s $f4, $f8, $f18 /* 08BB18 8008AF18 44899000 */ mtc1 $t1, $f18 /* 08BB1C 8008AF1C 460A7402 */ mul.s $f16, $f14, $f10 /* 08BB20 8008AF20 84CC0004 */ lh $t4, 4($a2) /* 08BB24 8008AF24 84CD0006 */ lh $t5, 6($a2) /* 08BB28 8008AF28 3C078016 */ lui $a3, %hi(D_80165780) # $a3, 0x8016 /* 08BB2C 8008AF2C 24E75780 */ addiu $a3, %lo(D_80165780) # addiu $a3, $a3, 0x5780 /* 08BB30 8008AF30 84EE0000 */ lh $t6, ($a3) /* 08BB34 8008AF34 468091A0 */ cvt.s.w $f6, $f18 /* 08BB38 8008AF38 84EF0002 */ lh $t7, 2($a3) /* 08BB3C 8008AF3C 84F80004 */ lh $t8, 4($a3) /* 08BB40 8008AF40 84F90006 */ lh $t9, 6($a3) /* 08BB44 8008AF44 46102200 */ add.s $f8, $f4, $f16 /* 08BB48 8008AF48 46003282 */ mul.s $f10, $f6, $f0 /* 08BB4C 8008AF4C 448A8000 */ mtc1 $t2, $f16 /* 08BB50 8008AF50 00000000 */ nop /* 08BB54 8008AF54 468084A0 */ cvt.s.w $f18, $f16 /* 08BB58 8008AF58 46085100 */ add.s $f4, $f10, $f8 /* 08BB5C 8008AF5C 448B5000 */ mtc1 $t3, $f10 /* 08BB60 8008AF60 46121182 */ mul.s $f6, $f2, $f18 /* 08BB64 8008AF64 448C9000 */ mtc1 $t4, $f18 /* 08BB68 8008AF68 E4440038 */ swc1 $f4, 0x38($v0) /* 08BB6C 8008AF6C 46805220 */ cvt.s.w $f8, $f10 /* 08BB70 8008AF70 468092A0 */ cvt.s.w $f10, $f18 /* 08BB74 8008AF74 46086102 */ mul.s $f4, $f12, $f8 /* 08BB78 8008AF78 46043400 */ add.s $f16, $f6, $f4 /* 08BB7C 8008AF7C 448D2000 */ mtc1 $t5, $f4 /* 08BB80 8008AF80 460A7202 */ mul.s $f8, $f14, $f10 /* 08BB84 8008AF84 468024A0 */ cvt.s.w $f18, $f4 /* 08BB88 8008AF88 46088180 */ add.s $f6, $f16, $f8 /* 08BB8C 8008AF8C 46009282 */ mul.s $f10, $f18, $f0 /* 08BB90 8008AF90 448E4000 */ mtc1 $t6, $f8 /* 08BB94 8008AF94 00000000 */ nop /* 08BB98 8008AF98 46804120 */ cvt.s.w $f4, $f8 /* 08BB9C 8008AF9C 46065400 */ add.s $f16, $f10, $f6 /* 08BBA0 8008AFA0 448F5000 */ mtc1 $t7, $f10 /* 08BBA4 8008AFA4 46041482 */ mul.s $f18, $f2, $f4 /* 08BBA8 8008AFA8 44982000 */ mtc1 $t8, $f4 /* 08BBAC 8008AFAC E450003C */ swc1 $f16, 0x3c($v0) /* 08BBB0 8008AFB0 468051A0 */ cvt.s.w $f6, $f10 /* 08BBB4 8008AFB4 468022A0 */ cvt.s.w $f10, $f4 /* 08BBB8 8008AFB8 46066402 */ mul.s $f16, $f12, $f6 /* 08BBBC 8008AFBC 46109200 */ add.s $f8, $f18, $f16 /* 08BBC0 8008AFC0 44998000 */ mtc1 $t9, $f16 /* 08BBC4 8008AFC4 460A7182 */ mul.s $f6, $f14, $f10 /* 08BBC8 8008AFC8 46808120 */ cvt.s.w $f4, $f16 /* 08BBCC 8008AFCC 46064480 */ add.s $f18, $f8, $f6 /* 08BBD0 8008AFD0 46002282 */ mul.s $f10, $f4, $f0 /* 08BBD4 8008AFD4 46125200 */ add.s $f8, $f10, $f18 /* 08BBD8 8008AFD8 03E00008 */ jr $ra /* 08BBDC 8008AFDC E4480040 */ swc1 $f8, 0x40($v0) glabel func_8008AFE0 /* 08BBE0 8008AFE0 44856000 */ mtc1 $a1, $f12 /* 08BBE4 8008AFE4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08BBE8 8008AFE8 AFA40018 */ sw $a0, 0x18($sp) /* 08BBEC 8008AFEC AFBF0014 */ sw $ra, 0x14($sp) /* 08BBF0 8008AFF0 3C048018 */ lui $a0, %hi(D_80183DC8) # $a0, 0x8018 /* 08BBF4 8008AFF4 44056000 */ mfc1 $a1, $f12 /* 08BBF8 8008AFF8 0C022B74 */ jal func_8008ADD0 /* 08BBFC 8008AFFC 24843DC8 */ addiu $a0, %lo(D_80183DC8) # addiu $a0, $a0, 0x3dc8 /* 08BC00 8008B000 0C022BA7 */ jal func_8008AE9C /* 08BC04 8008B004 8FA40018 */ lw $a0, 0x18($sp) /* 08BC08 8008B008 8FBF0014 */ lw $ra, 0x14($sp) /* 08BC0C 8008B00C 27BD0018 */ addiu $sp, $sp, 0x18 /* 08BC10 8008B010 03E00008 */ jr $ra /* 08BC14 8008B014 00000000 */ nop /* 08BC18 8008B018 03E00008 */ jr $ra /* 08BC1C 8008B01C 00000000 */ nop /* 08BC20 8008B020 03E00008 */ jr $ra /* 08BC24 8008B024 00000000 */ nop /* 08BC28 8008B028 03E00008 */ jr $ra /* 08BC2C 8008B02C 00000000 */ nop /* 08BC30 8008B030 03E00008 */ jr $ra /* 08BC34 8008B034 00000000 */ nop glabel func_8008B038 /* 08BC38 8008B038 3C038016 */ lui $v1, %hi(D_80165760) # $v1, 0x8016 /* 08BC3C 8008B03C 24635760 */ addiu $v1, %lo(D_80165760) # addiu $v1, $v1, 0x5760 /* 08BC40 8008B040 84780000 */ lh $t8, ($v1) /* 08BC44 8008B044 84790002 */ lh $t9, 2($v1) /* 08BC48 8008B048 3C058018 */ lui $a1, %hi(D_80183DA8) # $a1, 0x8018 /* 08BC4C 8008B04C 44982000 */ mtc1 $t8, $f4 /* 08BC50 8008B050 44995000 */ mtc1 $t9, $f10 /* 08BC54 8008B054 24A53DA8 */ addiu $a1, %lo(D_80183DA8) # addiu $a1, $a1, 0x3da8 /* 08BC58 8008B058 468021A0 */ cvt.s.w $f6, $f4 /* 08BC5C 8008B05C C4A20000 */ lwc1 $f2, ($a1) /* 08BC60 8008B060 C4AC0004 */ lwc1 $f12, 4($a1) /* 08BC64 8008B064 84680004 */ lh $t0, 4($v1) /* 08BC68 8008B068 84690006 */ lh $t1, 6($v1) /* 08BC6C 8008B06C 46805420 */ cvt.s.w $f16, $f10 /* 08BC70 8008B070 46061202 */ mul.s $f8, $f2, $f6 /* 08BC74 8008B074 44883000 */ mtc1 $t0, $f6 /* 08BC78 8008B078 C4AE0008 */ lwc1 $f14, 8($a1) /* 08BC7C 8008B07C C4A0000C */ lwc1 $f0, 0xc($a1) /* 08BC80 8008B080 3C068016 */ lui $a2, %hi(D_80165770) # $a2, 0x8016 /* 08BC84 8008B084 46106482 */ mul.s $f18, $f12, $f16 /* 08BC88 8008B088 24C65770 */ addiu $a2, %lo(D_80165770) # addiu $a2, $a2, 0x5770 /* 08BC8C 8008B08C 84CA0000 */ lh $t2, ($a2) /* 08BC90 8008B090 84CB0002 */ lh $t3, 2($a2) /* 08BC94 8008B094 000470C0 */ sll $t6, $a0, 3 /* 08BC98 8008B098 01C47023 */ subu $t6, $t6, $a0 /* 08BC9C 8008B09C 468032A0 */ cvt.s.w $f10, $f6 /* 08BCA0 8008B0A0 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08BCA4 8008B0A4 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08BCA8 8008B0A8 000E7140 */ sll $t6, $t6, 5 /* 08BCAC 8008B0AC 01CF1021 */ addu $v0, $t6, $t7 /* 08BCB0 8008B0B0 46124100 */ add.s $f4, $f8, $f18 /* 08BCB4 8008B0B4 44899000 */ mtc1 $t1, $f18 /* 08BCB8 8008B0B8 460A7402 */ mul.s $f16, $f14, $f10 /* 08BCBC 8008B0BC 84CC0004 */ lh $t4, 4($a2) /* 08BCC0 8008B0C0 84CD0006 */ lh $t5, 6($a2) /* 08BCC4 8008B0C4 3C078016 */ lui $a3, %hi(D_80165780) # $a3, 0x8016 /* 08BCC8 8008B0C8 24E75780 */ addiu $a3, %lo(D_80165780) # addiu $a3, $a3, 0x5780 /* 08BCCC 8008B0CC 84EE0000 */ lh $t6, ($a3) /* 08BCD0 8008B0D0 468091A0 */ cvt.s.w $f6, $f18 /* 08BCD4 8008B0D4 84EF0002 */ lh $t7, 2($a3) /* 08BCD8 8008B0D8 84F80004 */ lh $t8, 4($a3) /* 08BCDC 8008B0DC 84F90006 */ lh $t9, 6($a3) /* 08BCE0 8008B0E0 46102200 */ add.s $f8, $f4, $f16 /* 08BCE4 8008B0E4 46003282 */ mul.s $f10, $f6, $f0 /* 08BCE8 8008B0E8 448A8000 */ mtc1 $t2, $f16 /* 08BCEC 8008B0EC 00000000 */ nop /* 08BCF0 8008B0F0 468084A0 */ cvt.s.w $f18, $f16 /* 08BCF4 8008B0F4 46085100 */ add.s $f4, $f10, $f8 /* 08BCF8 8008B0F8 448B5000 */ mtc1 $t3, $f10 /* 08BCFC 8008B0FC 46121182 */ mul.s $f6, $f2, $f18 /* 08BD00 8008B100 448C9000 */ mtc1 $t4, $f18 /* 08BD04 8008B104 E4440028 */ swc1 $f4, 0x28($v0) /* 08BD08 8008B108 46805220 */ cvt.s.w $f8, $f10 /* 08BD0C 8008B10C 468092A0 */ cvt.s.w $f10, $f18 /* 08BD10 8008B110 46086102 */ mul.s $f4, $f12, $f8 /* 08BD14 8008B114 46043400 */ add.s $f16, $f6, $f4 /* 08BD18 8008B118 448D2000 */ mtc1 $t5, $f4 /* 08BD1C 8008B11C 460A7202 */ mul.s $f8, $f14, $f10 /* 08BD20 8008B120 468024A0 */ cvt.s.w $f18, $f4 /* 08BD24 8008B124 46088180 */ add.s $f6, $f16, $f8 /* 08BD28 8008B128 46009282 */ mul.s $f10, $f18, $f0 /* 08BD2C 8008B12C 448E4000 */ mtc1 $t6, $f8 /* 08BD30 8008B130 00000000 */ nop /* 08BD34 8008B134 46804120 */ cvt.s.w $f4, $f8 /* 08BD38 8008B138 46065400 */ add.s $f16, $f10, $f6 /* 08BD3C 8008B13C 448F5000 */ mtc1 $t7, $f10 /* 08BD40 8008B140 46041482 */ mul.s $f18, $f2, $f4 /* 08BD44 8008B144 44982000 */ mtc1 $t8, $f4 /* 08BD48 8008B148 E450002C */ swc1 $f16, 0x2c($v0) /* 08BD4C 8008B14C 468051A0 */ cvt.s.w $f6, $f10 /* 08BD50 8008B150 468022A0 */ cvt.s.w $f10, $f4 /* 08BD54 8008B154 46066402 */ mul.s $f16, $f12, $f6 /* 08BD58 8008B158 46109200 */ add.s $f8, $f18, $f16 /* 08BD5C 8008B15C 44998000 */ mtc1 $t9, $f16 /* 08BD60 8008B160 460A7182 */ mul.s $f6, $f14, $f10 /* 08BD64 8008B164 46808120 */ cvt.s.w $f4, $f16 /* 08BD68 8008B168 46064480 */ add.s $f18, $f8, $f6 /* 08BD6C 8008B16C 46002282 */ mul.s $f10, $f4, $f0 /* 08BD70 8008B170 46125200 */ add.s $f8, $f10, $f18 /* 08BD74 8008B174 03E00008 */ jr $ra /* 08BD78 8008B178 E4480030 */ swc1 $f8, 0x30($v0) glabel func_8008B17C /* 08BD7C 8008B17C 44856000 */ mtc1 $a1, $f12 /* 08BD80 8008B180 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08BD84 8008B184 AFA40018 */ sw $a0, 0x18($sp) /* 08BD88 8008B188 AFBF0014 */ sw $ra, 0x14($sp) /* 08BD8C 8008B18C 3C048018 */ lui $a0, %hi(D_80183DA8) # $a0, 0x8018 /* 08BD90 8008B190 44056000 */ mfc1 $a1, $f12 /* 08BD94 8008B194 0C022B38 */ jal func_8008ACE0 /* 08BD98 8008B198 24843DA8 */ addiu $a0, %lo(D_80183DA8) # addiu $a0, $a0, 0x3da8 /* 08BD9C 8008B19C 0C022C0E */ jal func_8008B038 /* 08BDA0 8008B1A0 8FA40018 */ lw $a0, 0x18($sp) /* 08BDA4 8008B1A4 8FBF0014 */ lw $ra, 0x14($sp) /* 08BDA8 8008B1A8 27BD0018 */ addiu $sp, $sp, 0x18 /* 08BDAC 8008B1AC 03E00008 */ jr $ra /* 08BDB0 8008B1B0 00000000 */ nop /* 08BDB4 8008B1B4 03E00008 */ jr $ra /* 08BDB8 8008B1B8 00000000 */ nop /* 08BDBC 8008B1BC 03E00008 */ jr $ra /* 08BDC0 8008B1C0 00000000 */ nop /* 08BDC4 8008B1C4 03E00008 */ jr $ra /* 08BDC8 8008B1C8 00000000 */ nop /* 08BDCC 8008B1CC 03E00008 */ jr $ra /* 08BDD0 8008B1D0 00000000 */ nop glabel func_8008B1D4 /* 08BDD4 8008B1D4 000470C0 */ sll $t6, $a0, 3 /* 08BDD8 8008B1D8 01C47023 */ subu $t6, $t6, $a0 /* 08BDDC 8008B1DC 000E7140 */ sll $t6, $t6, 5 /* 08BDE0 8008B1E0 3C028016 */ lui $v0, %hi(D_80165C94) # 0x8016 /* 08BDE4 8008B1E4 004E1021 */ addu $v0, $v0, $t6 /* 08BDE8 8008B1E8 8C425C94 */ lw $v0, %lo(D_80165C94)($v0) # 0x5c94($v0) /* 08BDEC 8008B1EC 3C018016 */ lui $at, %hi(D_80165760) # $at, 0x8016 /* 08BDF0 8008B1F0 844F0000 */ lh $t7, ($v0) /* 08BDF4 8008B1F4 24420018 */ addiu $v0, $v0, 0x18 /* 08BDF8 8008B1F8 A42F5760 */ sh $t7, %lo(D_80165760)($at) /* 08BDFC 8008B1FC 8458FFEA */ lh $t8, -0x16($v0) /* 08BE00 8008B200 3C018016 */ lui $at, %hi(D_80165770) # $at, 0x8016 /* 08BE04 8008B204 A4385770 */ sh $t8, %lo(D_80165770)($at) /* 08BE08 8008B208 8459FFEC */ lh $t9, -0x14($v0) /* 08BE0C 8008B20C 3C018016 */ lui $at, %hi(D_80165780) # $at, 0x8016 /* 08BE10 8008B210 A4395780 */ sh $t9, %lo(D_80165780)($at) /* 08BE14 8008B214 8448FFF0 */ lh $t0, -0x10($v0) /* 08BE18 8008B218 3C018016 */ lui $at, %hi(D_80165762) # $at, 0x8016 /* 08BE1C 8008B21C A4285762 */ sh $t0, %lo(D_80165762)($at) /* 08BE20 8008B220 8449FFF2 */ lh $t1, -0xe($v0) /* 08BE24 8008B224 3C018016 */ lui $at, %hi(D_80165772) # $at, 0x8016 /* 08BE28 8008B228 A4295772 */ sh $t1, %lo(D_80165772)($at) /* 08BE2C 8008B22C 844AFFF4 */ lh $t2, -0xc($v0) /* 08BE30 8008B230 3C018016 */ lui $at, %hi(D_80165782) # $at, 0x8016 /* 08BE34 8008B234 A42A5782 */ sh $t2, %lo(D_80165782)($at) /* 08BE38 8008B238 844BFFF8 */ lh $t3, -8($v0) /* 08BE3C 8008B23C 3C018016 */ lui $at, %hi(D_80165764) # $at, 0x8016 /* 08BE40 8008B240 A42B5764 */ sh $t3, %lo(D_80165764)($at) /* 08BE44 8008B244 844CFFFA */ lh $t4, -6($v0) /* 08BE48 8008B248 3C018016 */ lui $at, %hi(D_80165774) # $at, 0x8016 /* 08BE4C 8008B24C A42C5774 */ sh $t4, %lo(D_80165774)($at) /* 08BE50 8008B250 844DFFFC */ lh $t5, -4($v0) /* 08BE54 8008B254 3C018016 */ lui $at, %hi(D_80165784) # $at, 0x8016 /* 08BE58 8008B258 A42D5784 */ sh $t5, %lo(D_80165784)($at) /* 08BE5C 8008B25C 844E0000 */ lh $t6, ($v0) /* 08BE60 8008B260 3C018016 */ lui $at, %hi(D_80165766) # $at, 0x8016 /* 08BE64 8008B264 A42E5766 */ sh $t6, %lo(D_80165766)($at) /* 08BE68 8008B268 844F0002 */ lh $t7, 2($v0) /* 08BE6C 8008B26C 3C018016 */ lui $at, %hi(D_80165776) # $at, 0x8016 /* 08BE70 8008B270 A42F5776 */ sh $t7, %lo(D_80165776)($at) /* 08BE74 8008B274 84580004 */ lh $t8, 4($v0) /* 08BE78 8008B278 3C018016 */ lui $at, %hi(D_80165786) # 0x8016 /* 08BE7C 8008B27C 03E00008 */ jr $ra /* 08BE80 8008B280 A4385786 */ sh $t8, %lo(D_80165786)($at) # 0x5786($at) glabel func_8008B284 /* 08BE84 8008B284 000470C0 */ sll $t6, $a0, 3 /* 08BE88 8008B288 01C47023 */ subu $t6, $t6, $a0 /* 08BE8C 8008B28C 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08BE90 8008B290 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08BE94 8008B294 000E7140 */ sll $t6, $t6, 5 /* 08BE98 8008B298 01CF1821 */ addu $v1, $t6, $t7 /* 08BE9C 8008B29C 94660094 */ lhu $a2, 0x94($v1) /* 08BEA0 8008B2A0 84650096 */ lh $a1, 0x96($v1) /* 08BEA4 8008B2A4 27BDFFF8 */ addiu $sp, $sp, -8 /* 08BEA8 8008B2A8 24D8FFFC */ addiu $t8, $a2, -4 /* 08BEAC 8008B2AC 0305082A */ slt $at, $t8, $a1 /* 08BEB0 8008B2B0 14200004 */ bnez $at, .L8008B2C4 /* 08BEB4 8008B2B4 8C62007C */ lw $v0, 0x7c($v1) /* 08BEB8 8008B2B8 24042710 */ li $a0, 10000 /* 08BEBC 8008B2BC 1000000F */ b .L8008B2FC /* 08BEC0 8008B2C0 AFA40000 */ sw $a0, ($sp) .L8008B2C4: /* 08BEC4 8008B2C4 24B90003 */ addiu $t9, $a1, 3 /* 08BEC8 8008B2C8 17260004 */ bne $t9, $a2, .L8008B2DC /* 08BECC 8008B2CC 24A80002 */ addiu $t0, $a1, 2 /* 08BED0 8008B2D0 24040002 */ li $a0, 2 /* 08BED4 8008B2D4 10000009 */ b .L8008B2FC /* 08BED8 8008B2D8 AFA40000 */ sw $a0, ($sp) .L8008B2DC: /* 08BEDC 8008B2DC 15060004 */ bne $t0, $a2, .L8008B2F0 /* 08BEE0 8008B2E0 24A90001 */ addiu $t1, $a1, 1 /* 08BEE4 8008B2E4 24040001 */ li $a0, 1 /* 08BEE8 8008B2E8 10000004 */ b .L8008B2FC /* 08BEEC 8008B2EC AFA40000 */ sw $a0, ($sp) .L8008B2F0: /* 08BEF0 8008B2F0 55260003 */ bnel $t1, $a2, .L8008B300 /* 08BEF4 8008B2F4 844A0000 */ lh $t2, ($v0) /* 08BEF8 8008B2F8 AFA00000 */ sw $zero, ($sp) .L8008B2FC: /* 08BEFC 8008B2FC 844A0000 */ lh $t2, ($v0) .L8008B300: /* 08BF00 8008B300 3C018016 */ lui $at, %hi(D_80165760) # $at, 0x8016 /* 08BF04 8008B304 8FA40000 */ lw $a0, ($sp) /* 08BF08 8008B308 A42A5760 */ sh $t2, %lo(D_80165760)($at) /* 08BF0C 8008B30C 844B0002 */ lh $t3, 2($v0) /* 08BF10 8008B310 3C018016 */ lui $at, %hi(D_80165770) # $at, 0x8016 /* 08BF14 8008B314 24420008 */ addiu $v0, $v0, 8 /* 08BF18 8008B318 A42B5770 */ sh $t3, %lo(D_80165770)($at) /* 08BF1C 8008B31C 844CFFFC */ lh $t4, -4($v0) /* 08BF20 8008B320 3C018016 */ lui $at, %hi(D_80165780) # $at, 0x8016 /* 08BF24 8008B324 14800004 */ bnez $a0, .L8008B338 /* 08BF28 8008B328 A42C5780 */ sh $t4, %lo(D_80165780)($at) /* 08BF2C 8008B32C 8C620080 */ lw $v0, 0x80($v1) /* 08BF30 8008B330 10000001 */ b .L8008B338 /* 08BF34 8008B334 24420002 */ addiu $v0, $v0, 2 .L8008B338: /* 08BF38 8008B338 844D0000 */ lh $t5, ($v0) /* 08BF3C 8008B33C 3C018016 */ lui $at, %hi(D_80165762) # $at, 0x8016 /* 08BF40 8008B340 24420008 */ addiu $v0, $v0, 8 /* 08BF44 8008B344 A42D5762 */ sh $t5, %lo(D_80165762)($at) /* 08BF48 8008B348 844EFFFA */ lh $t6, -6($v0) /* 08BF4C 8008B34C 3C018016 */ lui $at, %hi(D_80165772) # $at, 0x8016 /* 08BF50 8008B350 A42E5772 */ sh $t6, %lo(D_80165772)($at) /* 08BF54 8008B354 844FFFFC */ lh $t7, -4($v0) /* 08BF58 8008B358 3C018016 */ lui $at, %hi(D_80165782) # $at, 0x8016 /* 08BF5C 8008B35C A42F5782 */ sh $t7, %lo(D_80165782)($at) /* 08BF60 8008B360 24010001 */ li $at, 1 /* 08BF64 8008B364 14810004 */ bne $a0, $at, .L8008B378 /* 08BF68 8008B368 00000000 */ nop /* 08BF6C 8008B36C 8C620080 */ lw $v0, 0x80($v1) /* 08BF70 8008B370 10000001 */ b .L8008B378 /* 08BF74 8008B374 24420002 */ addiu $v0, $v0, 2 .L8008B378: /* 08BF78 8008B378 84580000 */ lh $t8, ($v0) /* 08BF7C 8008B37C 3C018016 */ lui $at, %hi(D_80165764) # $at, 0x8016 /* 08BF80 8008B380 A4385764 */ sh $t8, %lo(D_80165764)($at) /* 08BF84 8008B384 84590002 */ lh $t9, 2($v0) /* 08BF88 8008B388 3C018016 */ lui $at, %hi(D_80165774) # $at, 0x8016 /* 08BF8C 8008B38C A4395774 */ sh $t9, %lo(D_80165774)($at) /* 08BF90 8008B390 84480004 */ lh $t0, 4($v0) /* 08BF94 8008B394 3C018016 */ lui $at, %hi(D_80165784) # $at, 0x8016 /* 08BF98 8008B398 A4285784 */ sh $t0, %lo(D_80165784)($at) /* 08BF9C 8008B39C 24010002 */ li $at, 2 /* 08BFA0 8008B3A0 54810005 */ bnel $a0, $at, .L8008B3B8 /* 08BFA4 8008B3A4 24420008 */ addiu $v0, $v0, 8 /* 08BFA8 8008B3A8 8C620080 */ lw $v0, 0x80($v1) /* 08BFAC 8008B3AC 10000002 */ b .L8008B3B8 /* 08BFB0 8008B3B0 24420002 */ addiu $v0, $v0, 2 /* 08BFB4 8008B3B4 24420008 */ addiu $v0, $v0, 8 .L8008B3B8: /* 08BFB8 8008B3B8 84490000 */ lh $t1, ($v0) /* 08BFBC 8008B3BC 3C018016 */ lui $at, %hi(D_80165766) # $at, 0x8016 /* 08BFC0 8008B3C0 A4295766 */ sh $t1, %lo(D_80165766)($at) /* 08BFC4 8008B3C4 844A0002 */ lh $t2, 2($v0) /* 08BFC8 8008B3C8 3C018016 */ lui $at, %hi(D_80165776) # $at, 0x8016 /* 08BFCC 8008B3CC A42A5776 */ sh $t2, %lo(D_80165776)($at) /* 08BFD0 8008B3D0 844B0004 */ lh $t3, 4($v0) /* 08BFD4 8008B3D4 3C018016 */ lui $at, %hi(D_80165786) # 0x8016 /* 08BFD8 8008B3D8 27BD0008 */ addiu $sp, $sp, 8 /* 08BFDC 8008B3DC 03E00008 */ jr $ra /* 08BFE0 8008B3E0 A42B5786 */ sh $t3, %lo(D_80165786)($at) # 0x5786($at) glabel func_8008B3E4 /* 08BFE4 8008B3E4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08BFE8 8008B3E8 AFBF0014 */ sw $ra, 0x14($sp) /* 08BFEC 8008B3EC AFA40018 */ sw $a0, 0x18($sp) /* 08BFF0 8008B3F0 0C01C89C */ jal func_80072270 /* 08BFF4 8008B3F4 24050008 */ li $a1, 8 /* 08BFF8 8008B3F8 10400010 */ beqz $v0, .L8008B43C /* 08BFFC 8008B3FC 8FA40018 */ lw $a0, 0x18($sp) /* 08C000 8008B400 000470C0 */ sll $t6, $a0, 3 /* 08C004 8008B404 01C47023 */ subu $t6, $t6, $a0 /* 08C008 8008B408 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08C00C 8008B40C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08C010 8008B410 000E7140 */ sll $t6, $t6, 5 /* 08C014 8008B414 01CF1021 */ addu $v0, $t6, $t7 /* 08C018 8008B418 8C430080 */ lw $v1, 0x80($v0) /* 08C01C 8008B41C A4400096 */ sh $zero, 0x96($v0) /* 08C020 8008B420 A4400098 */ sh $zero, 0x98($v0) /* 08C024 8008B424 24630002 */ addiu $v1, $v1, 2 /* 08C028 8008B428 AC43007C */ sw $v1, 0x7c($v0) /* 08C02C 8008B42C 8478FFFE */ lh $t8, -2($v1) /* 08C030 8008B430 24050008 */ li $a1, 8 /* 08C034 8008B434 0C01C870 */ jal func_800721C0 /* 08C038 8008B438 A4580094 */ sh $t8, 0x94($v0) .L8008B43C: /* 08C03C 8008B43C 8FBF0014 */ lw $ra, 0x14($sp) /* 08C040 8008B440 27BD0018 */ addiu $sp, $sp, 0x18 /* 08C044 8008B444 03E00008 */ jr $ra /* 08C048 8008B448 00000000 */ nop glabel func_8008B44C /* 08C04C 8008B44C 000470C0 */ sll $t6, $a0, 3 /* 08C050 8008B450 01C47023 */ subu $t6, $t6, $a0 /* 08C054 8008B454 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08C058 8008B458 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08C05C 8008B45C 000E7140 */ sll $t6, $t6, 5 /* 08C060 8008B460 01CF1021 */ addu $v0, $t6, $t7 /* 08C064 8008B464 8C58007C */ lw $t8, 0x7c($v0) /* 08C068 8008B468 A4400098 */ sh $zero, 0x98($v0) /* 08C06C 8008B46C 27190008 */ addiu $t9, $t8, 8 /* 08C070 8008B470 03E00008 */ jr $ra /* 08C074 8008B474 AC59007C */ sw $t9, 0x7c($v0) glabel func_8008B478 /* 08C078 8008B478 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 08C07C 8008B47C AFBF001C */ sw $ra, 0x1c($sp) /* 08C080 8008B480 AFB00018 */ sw $s0, 0x18($sp) /* 08C084 8008B484 00808025 */ move $s0, $a0 /* 08C088 8008B488 0C022CF9 */ jal func_8008B3E4 /* 08C08C 8008B48C AFA5003C */ sw $a1, 0x3c($sp) /* 08C090 8008B490 8FAE003C */ lw $t6, 0x3c($sp) /* 08C094 8008B494 11C00005 */ beqz $t6, .L8008B4AC /* 08C098 8008B498 00000000 */ nop /* 08C09C 8008B49C 0C022CA1 */ jal func_8008B284 /* 08C0A0 8008B4A0 02002025 */ move $a0, $s0 /* 08C0A4 8008B4A4 10000004 */ b .L8008B4B8 /* 08C0A8 8008B4A8 001078C0 */ sll $t7, $s0, 3 .L8008B4AC: /* 08C0AC 8008B4AC 0C022C75 */ jal func_8008B1D4 /* 08C0B0 8008B4B0 02002025 */ move $a0, $s0 /* 08C0B4 8008B4B4 001078C0 */ sll $t7, $s0, 3 .L8008B4B8: /* 08C0B8 8008B4B8 01F07823 */ subu $t7, $t7, $s0 /* 08C0BC 8008B4BC 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08C0C0 8008B4C0 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08C0C4 8008B4C4 000F7940 */ sll $t7, $t7, 5 /* 08C0C8 8008B4C8 01F81821 */ addu $v1, $t7, $t8 /* 08C0CC 8008B4CC 94790098 */ lhu $t9, 0x98($v1) /* 08C0D0 8008B4D0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 08C0D4 8008B4D4 44992000 */ mtc1 $t9, $f4 /* 08C0D8 8008B4D8 07210004 */ bgez $t9, .L8008B4EC /* 08C0DC 8008B4DC 468021A0 */ cvt.s.w $f6, $f4 /* 08C0E0 8008B4E0 44814000 */ mtc1 $at, $f8 /* 08C0E4 8008B4E4 00000000 */ nop /* 08C0E8 8008B4E8 46083180 */ add.s $f6, $f6, $f8 .L8008B4EC: /* 08C0EC 8008B4EC 3C01800F */ lui $at, %hi(D_800EF508) /* 08C0F0 8008B4F0 D430F508 */ ldc1 $f16, %lo(D_800EF508)($at) /* 08C0F4 8008B4F4 460032A1 */ cvt.d.s $f10, $f6 /* 08C0F8 8008B4F8 02002025 */ move $a0, $s0 /* 08C0FC 8008B4FC 46305483 */ div.d $f18, $f10, $f16 /* 08C100 8008B500 AFA30024 */ sw $v1, 0x24($sp) /* 08C104 8008B504 46209020 */ cvt.s.d $f0, $f18 /* 08C108 8008B508 44050000 */ mfc1 $a1, $f0 /* 08C10C 8008B50C 0C022C5F */ jal func_8008B17C /* 08C110 8008B510 E7A00034 */ swc1 $f0, 0x34($sp) /* 08C114 8008B514 02002025 */ move $a0, $s0 /* 08C118 8008B518 0C01C88F */ jal func_8007223C /* 08C11C 8008B51C 24050800 */ li $a1, 2048 /* 08C120 8008B520 10400006 */ beqz $v0, .L8008B53C /* 08C124 8008B524 8FA30024 */ lw $v1, 0x24($sp) /* 08C128 8008B528 02002025 */ move $a0, $s0 /* 08C12C 8008B52C 8FA50034 */ lw $a1, 0x34($sp) /* 08C130 8008B530 0C022BF8 */ jal func_8008AFE0 /* 08C134 8008B534 AFA30024 */ sw $v1, 0x24($sp) /* 08C138 8008B538 8FA30024 */ lw $v1, 0x24($sp) .L8008B53C: /* 08C13C 8008B53C 8C62007C */ lw $v0, 0x7c($v1) /* 08C140 8008B540 C7AA0034 */ lwc1 $f10, 0x34($sp) /* 08C144 8008B544 3C01800F */ lui $at, %hi(D_800EF510) /* 08C148 8008B548 84480006 */ lh $t0, 6($v0) /* 08C14C 8008B54C 8449000E */ lh $t1, 0xe($v0) /* 08C150 8008B550 240B0001 */ li $t3, 1 /* 08C154 8008B554 44882000 */ mtc1 $t0, $f4 /* 08C158 8008B558 44894000 */ mtc1 $t1, $f8 /* 08C15C 8008B55C 46802020 */ cvt.s.w $f0, $f4 /* 08C160 8008B560 468040A0 */ cvt.s.w $f2, $f8 /* 08C164 8008B564 D428F510 */ ldc1 $f8, %lo(D_800EF510)($at) /* 08C168 8008B568 3C0141E0 */ li $at, 0x41E00000 # 28.000000 /* 08C16C 8008B56C 46001181 */ sub.s $f6, $f2, $f0 /* 08C170 8008B570 460A3402 */ mul.s $f16, $f6, $f10 /* 08C174 8008B574 46008480 */ add.s $f18, $f16, $f0 /* 08C178 8008B578 46009121 */ cvt.d.s $f4, $f18 /* 08C17C 8008B57C 46244183 */ div.d $f6, $f8, $f4 /* 08C180 8008B580 444AF800 */ cfc1 $t2, $31 /* 08C184 8008B584 44CBF800 */ ctc1 $t3, $31 /* 08C188 8008B588 00000000 */ nop /* 08C18C 8008B58C 462032A4 */ cvt.w.d $f10, $f6 /* 08C190 8008B590 444BF800 */ cfc1 $t3, $31 /* 08C194 8008B594 00000000 */ nop /* 08C198 8008B598 316B0078 */ andi $t3, $t3, 0x78 /* 08C19C 8008B59C 51600014 */ beql $t3, $zero, .L8008B5F0 /* 08C1A0 8008B5A0 440B5000 */ mfc1 $t3, $f10 /* 08C1A4 8008B5A4 44815800 */ mtc1 $at, $f11 /* 08C1A8 8008B5A8 44805000 */ mtc1 $zero, $f10 /* 08C1AC 8008B5AC 240B0001 */ li $t3, 1 /* 08C1B0 8008B5B0 462A3281 */ sub.d $f10, $f6, $f10 /* 08C1B4 8008B5B4 44CBF800 */ ctc1 $t3, $31 /* 08C1B8 8008B5B8 00000000 */ nop /* 08C1BC 8008B5BC 462052A4 */ cvt.w.d $f10, $f10 /* 08C1C0 8008B5C0 444BF800 */ cfc1 $t3, $31 /* 08C1C4 8008B5C4 00000000 */ nop /* 08C1C8 8008B5C8 316B0078 */ andi $t3, $t3, 0x78 /* 08C1CC 8008B5CC 15600005 */ bnez $t3, .L8008B5E4 /* 08C1D0 8008B5D0 00000000 */ nop /* 08C1D4 8008B5D4 440B5000 */ mfc1 $t3, $f10 /* 08C1D8 8008B5D8 3C018000 */ lui $at, 0x8000 /* 08C1DC 8008B5DC 10000007 */ b .L8008B5FC /* 08C1E0 8008B5E0 01615825 */ or $t3, $t3, $at .L8008B5E4: /* 08C1E4 8008B5E4 10000005 */ b .L8008B5FC /* 08C1E8 8008B5E8 240BFFFF */ li $t3, -1 /* 08C1EC 8008B5EC 440B5000 */ mfc1 $t3, $f10 .L8008B5F0: /* 08C1F0 8008B5F0 00000000 */ nop /* 08C1F4 8008B5F4 0560FFFB */ bltz $t3, .L8008B5E4 /* 08C1F8 8008B5F8 00000000 */ nop .L8008B5FC: /* 08C1FC 8008B5FC 946C0098 */ lhu $t4, 0x98($v1) /* 08C200 8008B600 8FBF001C */ lw $ra, 0x1c($sp) /* 08C204 8008B604 44CAF800 */ ctc1 $t2, $31 /* 08C208 8008B608 8FB00018 */ lw $s0, 0x18($sp) /* 08C20C 8008B60C 018B7021 */ addu $t6, $t4, $t3 /* 08C210 8008B610 A46B009A */ sh $t3, 0x9a($v1) /* 08C214 8008B614 A46E0098 */ sh $t6, 0x98($v1) /* 08C218 8008B618 03E00008 */ jr $ra /* 08C21C 8008B61C 27BD0038 */ addiu $sp, $sp, 0x38 glabel func_8008B620 /* 08C220 8008B620 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08C224 8008B624 AFBF0014 */ sw $ra, 0x14($sp) /* 08C228 8008B628 AFA40018 */ sw $a0, 0x18($sp) /* 08C22C 8008B62C 0C022D1E */ jal func_8008B478 /* 08C230 8008B630 00002825 */ move $a1, $zero /* 08C234 8008B634 8FA40018 */ lw $a0, 0x18($sp) /* 08C238 8008B638 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08C23C 8008B63C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08C240 8008B640 000470C0 */ sll $t6, $a0, 3 /* 08C244 8008B644 01C47023 */ subu $t6, $t6, $a0 /* 08C248 8008B648 000E7140 */ sll $t6, $t6, 5 /* 08C24C 8008B64C 01CF1021 */ addu $v0, $t6, $t7 /* 08C250 8008B650 94580098 */ lhu $t8, 0x98($v0) /* 08C254 8008B654 2B012710 */ slti $at, $t8, 0x2710 /* 08C258 8008B658 5420000F */ bnel $at, $zero, .L8008B698 /* 08C25C 8008B65C 8FBF0014 */ lw $ra, 0x14($sp) /* 08C260 8008B660 94590096 */ lhu $t9, 0x96($v0) /* 08C264 8008B664 944B0094 */ lhu $t3, 0x94($v0) /* 08C268 8008B668 27280001 */ addiu $t0, $t9, 1 /* 08C26C 8008B66C 3109FFFF */ andi $t1, $t0, 0xffff /* 08C270 8008B670 252A0003 */ addiu $t2, $t1, 3 /* 08C274 8008B674 154B0005 */ bne $t2, $t3, .L8008B68C /* 08C278 8008B678 A4480096 */ sh $t0, 0x96($v0) /* 08C27C 8008B67C 844C00AE */ lh $t4, 0xae($v0) /* 08C280 8008B680 258D0001 */ addiu $t5, $t4, 1 /* 08C284 8008B684 10000003 */ b .L8008B694 /* 08C288 8008B688 A44D00AE */ sh $t5, 0xae($v0) .L8008B68C: /* 08C28C 8008B68C 0C022D13 */ jal func_8008B44C /* 08C290 8008B690 00000000 */ nop .L8008B694: /* 08C294 8008B694 8FBF0014 */ lw $ra, 0x14($sp) .L8008B698: /* 08C298 8008B698 27BD0018 */ addiu $sp, $sp, 0x18 /* 08C29C 8008B69C 03E00008 */ jr $ra /* 08C2A0 8008B6A0 00000000 */ nop glabel func_8008B6A4 /* 08C2A4 8008B6A4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08C2A8 8008B6A8 AFBF0014 */ sw $ra, 0x14($sp) /* 08C2AC 8008B6AC AFA40018 */ sw $a0, 0x18($sp) /* 08C2B0 8008B6B0 0C022D1E */ jal func_8008B478 /* 08C2B4 8008B6B4 24050001 */ li $a1, 1 /* 08C2B8 8008B6B8 8FA40018 */ lw $a0, 0x18($sp) /* 08C2BC 8008B6BC 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08C2C0 8008B6C0 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08C2C4 8008B6C4 000470C0 */ sll $t6, $a0, 3 /* 08C2C8 8008B6C8 01C47023 */ subu $t6, $t6, $a0 /* 08C2CC 8008B6CC 000E7140 */ sll $t6, $t6, 5 /* 08C2D0 8008B6D0 01CF1021 */ addu $v0, $t6, $t7 /* 08C2D4 8008B6D4 94580098 */ lhu $t8, 0x98($v0) /* 08C2D8 8008B6D8 2B012710 */ slti $at, $t8, 0x2710 /* 08C2DC 8008B6DC 5420000E */ bnel $at, $zero, .L8008B718 /* 08C2E0 8008B6E0 8FBF0014 */ lw $ra, 0x14($sp) /* 08C2E4 8008B6E4 94590096 */ lhu $t9, 0x96($v0) /* 08C2E8 8008B6E8 944A0094 */ lhu $t2, 0x94($v0) /* 08C2EC 8008B6EC 27280001 */ addiu $t0, $t9, 1 /* 08C2F0 8008B6F0 3109FFFF */ andi $t1, $t0, 0xffff /* 08C2F4 8008B6F4 152A0005 */ bne $t1, $t2, .L8008B70C /* 08C2F8 8008B6F8 A4480096 */ sh $t0, 0x96($v0) /* 08C2FC 8008B6FC 0C01C87A */ jal func_800721E8 /* 08C300 8008B700 24050008 */ li $a1, 8 /* 08C304 8008B704 10000004 */ b .L8008B718 /* 08C308 8008B708 8FBF0014 */ lw $ra, 0x14($sp) .L8008B70C: /* 08C30C 8008B70C 0C022D13 */ jal func_8008B44C /* 08C310 8008B710 00000000 */ nop /* 08C314 8008B714 8FBF0014 */ lw $ra, 0x14($sp) .L8008B718: /* 08C318 8008B718 27BD0018 */ addiu $sp, $sp, 0x18 /* 08C31C 8008B71C 03E00008 */ jr $ra /* 08C320 8008B720 00000000 */ nop glabel func_8008B724 /* 08C324 8008B724 000470C0 */ sll $t6, $a0, 3 /* 08C328 8008B728 01C47023 */ subu $t6, $t6, $a0 /* 08C32C 8008B72C 000E7140 */ sll $t6, $t6, 5 /* 08C330 8008B730 3C028016 */ lui $v0, %hi(D_80165CC6) # 0x8016 /* 08C334 8008B734 004E1021 */ addu $v0, $v0, $t6 /* 08C338 8008B738 84425CC6 */ lh $v0, %lo(D_80165CC6)($v0) # 0x5cc6($v0) /* 08C33C 8008B73C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08C340 8008B740 AFBF0014 */ sw $ra, 0x14($sp) /* 08C344 8008B744 1040000D */ beqz $v0, .L8008B77C /* 08C348 8008B748 24010001 */ li $at, 1 /* 08C34C 8008B74C 10410005 */ beq $v0, $at, .L8008B764 /* 08C350 8008B750 24010002 */ li $at, 2 /* 08C354 8008B754 10410007 */ beq $v0, $at, .L8008B774 /* 08C358 8008B758 00000000 */ nop /* 08C35C 8008B75C 10000008 */ b .L8008B780 /* 08C360 8008B760 8FBF0014 */ lw $ra, 0x14($sp) .L8008B764: /* 08C364 8008B764 0C022D88 */ jal func_8008B620 /* 08C368 8008B768 00000000 */ nop /* 08C36C 8008B76C 10000004 */ b .L8008B780 /* 08C370 8008B770 8FBF0014 */ lw $ra, 0x14($sp) .L8008B774: /* 08C374 8008B774 0C021BD8 */ jal func_80086F60 /* 08C378 8008B778 00000000 */ nop .L8008B77C: /* 08C37C 8008B77C 8FBF0014 */ lw $ra, 0x14($sp) .L8008B780: /* 08C380 8008B780 27BD0018 */ addiu $sp, $sp, 0x18 /* 08C384 8008B784 03E00008 */ jr $ra /* 08C388 8008B788 00000000 */ nop glabel func_8008B78C /* 08C38C 8008B78C 000470C0 */ sll $t6, $a0, 3 /* 08C390 8008B790 01C47023 */ subu $t6, $t6, $a0 /* 08C394 8008B794 000E7140 */ sll $t6, $t6, 5 /* 08C398 8008B798 3C028016 */ lui $v0, %hi(D_80165CC6) # 0x8016 /* 08C39C 8008B79C 004E1021 */ addu $v0, $v0, $t6 /* 08C3A0 8008B7A0 84425CC6 */ lh $v0, %lo(D_80165CC6)($v0) # 0x5cc6($v0) /* 08C3A4 8008B7A4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08C3A8 8008B7A8 AFBF0014 */ sw $ra, 0x14($sp) /* 08C3AC 8008B7AC 10400005 */ beqz $v0, .L8008B7C4 /* 08C3B0 8008B7B0 24010001 */ li $at, 1 /* 08C3B4 8008B7B4 54410004 */ bnel $v0, $at, .L8008B7C8 /* 08C3B8 8008B7B8 8FBF0014 */ lw $ra, 0x14($sp) /* 08C3BC 8008B7BC 0C022DA9 */ jal func_8008B6A4 /* 08C3C0 8008B7C0 00000000 */ nop .L8008B7C4: /* 08C3C4 8008B7C4 8FBF0014 */ lw $ra, 0x14($sp) .L8008B7C8: /* 08C3C8 8008B7C8 27BD0018 */ addiu $sp, $sp, 0x18 /* 08C3CC 8008B7CC 03E00008 */ jr $ra /* 08C3D0 8008B7D0 00000000 */ nop glabel func_8008B7D4 /* 08C3D4 8008B7D4 000470C0 */ sll $t6, $a0, 3 /* 08C3D8 8008B7D8 01C47023 */ subu $t6, $t6, $a0 /* 08C3DC 8008B7DC 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08C3E0 8008B7E0 AFA7000C */ sw $a3, 0xc($sp) /* 08C3E4 8008B7E4 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08C3E8 8008B7E8 000E7140 */ sll $t6, $t6, 5 /* 08C3EC 8008B7EC 44856000 */ mtc1 $a1, $f12 /* 08C3F0 8008B7F0 44867000 */ mtc1 $a2, $f14 /* 08C3F4 8008B7F4 C7A4000C */ lwc1 $f4, 0xc($sp) /* 08C3F8 8008B7F8 01CF1021 */ addu $v0, $t6, $t7 /* 08C3FC 8008B7FC E44C0010 */ swc1 $f12, 0x10($v0) /* 08C400 8008B800 E44E0014 */ swc1 $f14, 0x14($v0) /* 08C404 8008B804 03E00008 */ jr $ra /* 08C408 8008B808 E4440018 */ swc1 $f4, 0x18($v0) glabel func_8008B80C /* 08C40C 8008B80C 000470C0 */ sll $t6, $a0, 3 /* 08C410 8008B810 01C47023 */ subu $t6, $t6, $a0 /* 08C414 8008B814 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08C418 8008B818 AFA7000C */ sw $a3, 0xc($sp) /* 08C41C 8008B81C 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08C420 8008B820 000E7140 */ sll $t6, $t6, 5 /* 08C424 8008B824 44856000 */ mtc1 $a1, $f12 /* 08C428 8008B828 44867000 */ mtc1 $a2, $f14 /* 08C42C 8008B82C C7A4000C */ lwc1 $f4, 0xc($sp) /* 08C430 8008B830 01CF1021 */ addu $v0, $t6, $t7 /* 08C434 8008B834 E44C0028 */ swc1 $f12, 0x28($v0) /* 08C438 8008B838 E44E002C */ swc1 $f14, 0x2c($v0) /* 08C43C 8008B83C 03E00008 */ jr $ra /* 08C440 8008B840 E4440030 */ swc1 $f4, 0x30($v0) glabel func_8008B844 /* 08C444 8008B844 000470C0 */ sll $t6, $a0, 3 /* 08C448 8008B848 01C47023 */ subu $t6, $t6, $a0 /* 08C44C 8008B84C 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08C450 8008B850 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08C454 8008B854 000E7140 */ sll $t6, $t6, 5 /* 08C458 8008B858 01CF1021 */ addu $v0, $t6, $t7 /* 08C45C 8008B85C C4400010 */ lwc1 $f0, 0x10($v0) /* 08C460 8008B860 C4440028 */ lwc1 $f4, 0x28($v0) /* 08C464 8008B864 C448002C */ lwc1 $f8, 0x2c($v0) /* 08C468 8008B868 C4500030 */ lwc1 $f16, 0x30($v0) /* 08C46C 8008B86C 46002180 */ add.s $f6, $f4, $f0 /* 08C470 8008B870 46004280 */ add.s $f10, $f8, $f0 /* 08C474 8008B874 E4460004 */ swc1 $f6, 4($v0) /* 08C478 8008B878 46008480 */ add.s $f18, $f16, $f0 /* 08C47C 8008B87C E44A0008 */ swc1 $f10, 8($v0) /* 08C480 8008B880 03E00008 */ jr $ra /* 08C484 8008B884 E452000C */ swc1 $f18, 0xc($v0) glabel func_8008B888 /* 08C488 8008B888 0004C8C0 */ sll $t9, $a0, 3 /* 08C48C 8008B88C 0324C823 */ subu $t9, $t9, $a0 /* 08C490 8008B890 3C088016 */ lui $t0, %hi(D_80165C18) # $t0, 0x8016 /* 08C494 8008B894 25085C18 */ addiu $t0, %lo(D_80165C18) # addiu $t0, $t0, 0x5c18 /* 08C498 8008B898 0019C940 */ sll $t9, $t9, 5 /* 08C49C 8008B89C 03281021 */ addu $v0, $t9, $t0 /* 08C4A0 8008B8A0 AFA50004 */ sw $a1, 4($sp) /* 08C4A4 8008B8A4 AFA60008 */ sw $a2, 8($sp) /* 08C4A8 8008B8A8 AFA7000C */ sw $a3, 0xc($sp) /* 08C4AC 8008B8AC A44500BE */ sh $a1, 0xbe($v0) /* 08C4B0 8008B8B0 A44600C0 */ sh $a2, 0xc0($v0) /* 08C4B4 8008B8B4 03E00008 */ jr $ra /* 08C4B8 8008B8B8 A44700C2 */ sh $a3, 0xc2($v0) glabel func_8008B8BC /* 08C4BC 8008B8BC 0004C8C0 */ sll $t9, $a0, 3 /* 08C4C0 8008B8C0 0324C823 */ subu $t9, $t9, $a0 /* 08C4C4 8008B8C4 3C088016 */ lui $t0, %hi(D_80165C18) # $t0, 0x8016 /* 08C4C8 8008B8C8 25085C18 */ addiu $t0, %lo(D_80165C18) # addiu $t0, $t0, 0x5c18 /* 08C4CC 8008B8CC 0019C940 */ sll $t9, $t9, 5 /* 08C4D0 8008B8D0 03281021 */ addu $v0, $t9, $t0 /* 08C4D4 8008B8D4 AFA50004 */ sw $a1, 4($sp) /* 08C4D8 8008B8D8 AFA60008 */ sw $a2, 8($sp) /* 08C4DC 8008B8DC AFA7000C */ sw $a3, 0xc($sp) /* 08C4E0 8008B8E0 A44500B2 */ sh $a1, 0xb2($v0) /* 08C4E4 8008B8E4 A44600B4 */ sh $a2, 0xb4($v0) /* 08C4E8 8008B8E8 03E00008 */ jr $ra /* 08C4EC 8008B8EC A44700B6 */ sh $a3, 0xb6($v0) glabel func_8008B8F0 /* 08C4F0 8008B8F0 000470C0 */ sll $t6, $a0, 3 /* 08C4F4 8008B8F4 01C47023 */ subu $t6, $t6, $a0 /* 08C4F8 8008B8F8 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08C4FC 8008B8FC AFA7000C */ sw $a3, 0xc($sp) /* 08C500 8008B900 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08C504 8008B904 000E7140 */ sll $t6, $t6, 5 /* 08C508 8008B908 44856000 */ mtc1 $a1, $f12 /* 08C50C 8008B90C 44867000 */ mtc1 $a2, $f14 /* 08C510 8008B910 C7A4000C */ lwc1 $f4, 0xc($sp) /* 08C514 8008B914 01CF1021 */ addu $v0, $t6, $t7 /* 08C518 8008B918 E44C0038 */ swc1 $f12, 0x38($v0) /* 08C51C 8008B91C E44E003C */ swc1 $f14, 0x3c($v0) /* 08C520 8008B920 03E00008 */ jr $ra /* 08C524 8008B924 E4440040 */ swc1 $f4, 0x40($v0) /* 08C528 8008B928 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08C52C 8008B92C AFA50024 */ sw $a1, 0x24($sp) /* 08C530 8008B930 AFA60028 */ sw $a2, 0x28($sp) /* 08C534 8008B934 AFA7002C */ sw $a3, 0x2c($sp) /* 08C538 8008B938 00057400 */ sll $t6, $a1, 0x10 /* 08C53C 8008B93C 0006C400 */ sll $t8, $a2, 0x10 /* 08C540 8008B940 00074400 */ sll $t0, $a3, 0x10 /* 08C544 8008B944 00083C03 */ sra $a3, $t0, 0x10 /* 08C548 8008B948 00183403 */ sra $a2, $t8, 0x10 /* 08C54C 8008B94C 000E2C03 */ sra $a1, $t6, 0x10 /* 08C550 8008B950 44852000 */ mtc1 $a1, $f4 /* 08C554 8008B954 44864000 */ mtc1 $a2, $f8 /* 08C558 8008B958 44878000 */ mtc1 $a3, $f16 /* 08C55C 8008B95C 000450C0 */ sll $t2, $a0, 3 /* 08C560 8008B960 468021A0 */ cvt.s.w $f6, $f4 /* 08C564 8008B964 01445023 */ subu $t2, $t2, $a0 /* 08C568 8008B968 3C0B8016 */ lui $t3, %hi(D_80165C18) # $t3, 0x8016 /* 08C56C 8008B96C AFB00014 */ sw $s0, 0x14($sp) /* 08C570 8008B970 256B5C18 */ addiu $t3, %lo(D_80165C18) # addiu $t3, $t3, 0x5c18 /* 08C574 8008B974 468042A0 */ cvt.s.w $f10, $f8 /* 08C578 8008B978 000A5140 */ sll $t2, $t2, 5 /* 08C57C 8008B97C AFB10018 */ sw $s1, 0x18($sp) /* 08C580 8008B980 014B8021 */ addu $s0, $t2, $t3 /* 08C584 8008B984 8FB10030 */ lw $s1, 0x30($sp) /* 08C588 8008B988 468084A0 */ cvt.s.w $f18, $f16 /* 08C58C 8008B98C AFBF001C */ sw $ra, 0x1c($sp) /* 08C590 8008B990 E6060010 */ swc1 $f6, 0x10($s0) /* 08C594 8008B994 E60A0014 */ swc1 $f10, 0x14($s0) /* 08C598 8008B998 AE110080 */ sw $s1, 0x80($s0) /* 08C59C 8008B99C E6120018 */ swc1 $f18, 0x18($s0) /* 08C5A0 8008B9A0 862D0002 */ lh $t5, 2($s1) /* 08C5A4 8008B9A4 862C000A */ lh $t4, 0xa($s1) /* 08C5A8 8008B9A8 018D7023 */ subu $t6, $t4, $t5 /* 08C5AC 8008B9AC 448E2000 */ mtc1 $t6, $f4 /* 08C5B0 8008B9B0 00000000 */ nop /* 08C5B4 8008B9B4 468021A0 */ cvt.s.w $f6, $f4 /* 08C5B8 8008B9B8 E6060038 */ swc1 $f6, 0x38($s0) /* 08C5BC 8008B9BC 86380004 */ lh $t8, 4($s1) /* 08C5C0 8008B9C0 862F000C */ lh $t7, 0xc($s1) /* 08C5C4 8008B9C4 01F8C823 */ subu $t9, $t7, $t8 /* 08C5C8 8008B9C8 44994000 */ mtc1 $t9, $f8 /* 08C5CC 8008B9CC 00000000 */ nop /* 08C5D0 8008B9D0 468042A0 */ cvt.s.w $f10, $f8 /* 08C5D4 8008B9D4 E60A003C */ swc1 $f10, 0x3c($s0) /* 08C5D8 8008B9D8 86290006 */ lh $t1, 6($s1) /* 08C5DC 8008B9DC 8628000E */ lh $t0, 0xe($s1) /* 08C5E0 8008B9E0 AFA40020 */ sw $a0, 0x20($sp) /* 08C5E4 8008B9E4 01095023 */ subu $t2, $t0, $t1 /* 08C5E8 8008B9E8 448A8000 */ mtc1 $t2, $f16 /* 08C5EC 8008B9EC 00000000 */ nop /* 08C5F0 8008B9F0 468084A0 */ cvt.s.w $f18, $f16 /* 08C5F4 8008B9F4 0C021CDA */ jal func_80087368 /* 08C5F8 8008B9F8 E6120040 */ swc1 $f18, 0x40($s0) /* 08C5FC 8008B9FC 00403025 */ move $a2, $v0 /* 08C600 8008BA00 00063023 */ negu $a2, $a2 /* 08C604 8008BA04 30CBFFFF */ andi $t3, $a2, 0xffff /* 08C608 8008BA08 A60200C0 */ sh $v0, 0xc0($s0) /* 08C60C 8008BA0C 01603025 */ move $a2, $t3 /* 08C610 8008BA10 C60C0040 */ lwc1 $f12, 0x40($s0) /* 08C614 8008BA14 0C0105B6 */ jal func_800416D8 /* 08C618 8008BA18 C60E0038 */ lwc1 $f14, 0x38($s0) /* 08C61C 8008BA1C E6000040 */ swc1 $f0, 0x40($s0) /* 08C620 8008BA20 0C021CC9 */ jal func_80087324 /* 08C624 8008BA24 8FA40020 */ lw $a0, 0x20($sp) /* 08C628 8008BA28 8FBF001C */ lw $ra, 0x1c($sp) /* 08C62C 8008BA2C A60200BE */ sh $v0, 0xbe($s0) /* 08C630 8008BA30 8FB00014 */ lw $s0, 0x14($sp) /* 08C634 8008BA34 8FB10018 */ lw $s1, 0x18($sp) /* 08C638 8008BA38 03E00008 */ jr $ra /* 08C63C 8008BA3C 27BD0020 */ addiu $sp, $sp, 0x20 /* 08C640 8008BA40 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08C644 8008BA44 AFBF0014 */ sw $ra, 0x14($sp) /* 08C648 8008BA48 AFA40018 */ sw $a0, 0x18($sp) /* 08C64C 8008BA4C AFA60020 */ sw $a2, 0x20($sp) /* 08C650 8008BA50 AFA5001C */ sw $a1, 0x1c($sp) /* 08C654 8008BA54 0C0ADF8D */ jal random_int /* 08C658 8008BA58 97A40022 */ lhu $a0, 0x22($sp) /* 08C65C 8008BA5C 97AF0022 */ lhu $t7, 0x22($sp) /* 08C660 8008BA60 87AE001E */ lh $t6, 0x1e($sp) /* 08C664 8008BA64 8FAB0018 */ lw $t3, 0x18($sp) /* 08C668 8008BA68 05E10003 */ bgez $t7, .L8008BA78 /* 08C66C 8008BA6C 000FC043 */ sra $t8, $t7, 1 /* 08C670 8008BA70 25E10001 */ addiu $at, $t7, 1 /* 08C674 8008BA74 0001C043 */ sra $t8, $at, 1 .L8008BA78: /* 08C678 8008BA78 0058C823 */ subu $t9, $v0, $t8 /* 08C67C 8008BA7C 00194400 */ sll $t0, $t9, 0x10 /* 08C680 8008BA80 00084C03 */ sra $t1, $t0, 0x10 /* 08C684 8008BA84 01C95021 */ addu $t2, $t6, $t1 /* 08C688 8008BA88 448A2000 */ mtc1 $t2, $f4 /* 08C68C 8008BA8C 000B60C0 */ sll $t4, $t3, 3 /* 08C690 8008BA90 8FBF0014 */ lw $ra, 0x14($sp) /* 08C694 8008BA94 468021A0 */ cvt.s.w $f6, $f4 /* 08C698 8008BA98 018B6023 */ subu $t4, $t4, $t3 /* 08C69C 8008BA9C 000C6140 */ sll $t4, $t4, 5 /* 08C6A0 8008BAA0 3C018016 */ lui $at, %hi(D_80165C28) /* 08C6A4 8008BAA4 002C0821 */ addu $at, $at, $t4 /* 08C6A8 8008BAA8 27BD0018 */ addiu $sp, $sp, 0x18 /* 08C6AC 8008BAAC 03E00008 */ jr $ra /* 08C6B0 8008BAB0 E4265C28 */ swc1 $f6, %lo(D_80165C28)($at) glabel func_8008BAB4 /* 08C6B4 8008BAB4 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08C6B8 8008BAB8 AFBF0014 */ sw $ra, 0x14($sp) /* 08C6BC 8008BABC AFA40018 */ sw $a0, 0x18($sp) /* 08C6C0 8008BAC0 AFA60020 */ sw $a2, 0x20($sp) /* 08C6C4 8008BAC4 AFA5001C */ sw $a1, 0x1c($sp) /* 08C6C8 8008BAC8 0C0ADF8D */ jal random_int /* 08C6CC 8008BACC 97A40022 */ lhu $a0, 0x22($sp) /* 08C6D0 8008BAD0 97AF0022 */ lhu $t7, 0x22($sp) /* 08C6D4 8008BAD4 87AE001E */ lh $t6, 0x1e($sp) /* 08C6D8 8008BAD8 8FAB0018 */ lw $t3, 0x18($sp) /* 08C6DC 8008BADC 05E10003 */ bgez $t7, .L8008BAEC /* 08C6E0 8008BAE0 000FC043 */ sra $t8, $t7, 1 /* 08C6E4 8008BAE4 25E10001 */ addiu $at, $t7, 1 /* 08C6E8 8008BAE8 0001C043 */ sra $t8, $at, 1 .L8008BAEC: /* 08C6EC 8008BAEC 0058C823 */ subu $t9, $v0, $t8 /* 08C6F0 8008BAF0 00194400 */ sll $t0, $t9, 0x10 /* 08C6F4 8008BAF4 00084C03 */ sra $t1, $t0, 0x10 /* 08C6F8 8008BAF8 01C95021 */ addu $t2, $t6, $t1 /* 08C6FC 8008BAFC 448A2000 */ mtc1 $t2, $f4 /* 08C700 8008BB00 000B60C0 */ sll $t4, $t3, 3 /* 08C704 8008BB04 8FBF0014 */ lw $ra, 0x14($sp) /* 08C708 8008BB08 468021A0 */ cvt.s.w $f6, $f4 /* 08C70C 8008BB0C 018B6023 */ subu $t4, $t4, $t3 /* 08C710 8008BB10 000C6140 */ sll $t4, $t4, 5 /* 08C714 8008BB14 3C018016 */ lui $at, %hi(D_80165C2C) /* 08C718 8008BB18 002C0821 */ addu $at, $at, $t4 /* 08C71C 8008BB1C 27BD0018 */ addiu $sp, $sp, 0x18 /* 08C720 8008BB20 03E00008 */ jr $ra /* 08C724 8008BB24 E4265C2C */ swc1 $f6, %lo(D_80165C2C)($at) /* 08C728 8008BB28 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08C72C 8008BB2C AFBF0014 */ sw $ra, 0x14($sp) /* 08C730 8008BB30 AFA40018 */ sw $a0, 0x18($sp) /* 08C734 8008BB34 AFA60020 */ sw $a2, 0x20($sp) /* 08C738 8008BB38 AFA5001C */ sw $a1, 0x1c($sp) /* 08C73C 8008BB3C 0C0ADF8D */ jal random_int /* 08C740 8008BB40 97A40022 */ lhu $a0, 0x22($sp) /* 08C744 8008BB44 97AF0022 */ lhu $t7, 0x22($sp) /* 08C748 8008BB48 87AE001E */ lh $t6, 0x1e($sp) /* 08C74C 8008BB4C 8FAB0018 */ lw $t3, 0x18($sp) /* 08C750 8008BB50 05E10003 */ bgez $t7, .L8008BB60 /* 08C754 8008BB54 000FC043 */ sra $t8, $t7, 1 /* 08C758 8008BB58 25E10001 */ addiu $at, $t7, 1 /* 08C75C 8008BB5C 0001C043 */ sra $t8, $at, 1 .L8008BB60: /* 08C760 8008BB60 0058C823 */ subu $t9, $v0, $t8 /* 08C764 8008BB64 00194400 */ sll $t0, $t9, 0x10 /* 08C768 8008BB68 00084C03 */ sra $t1, $t0, 0x10 /* 08C76C 8008BB6C 01C95021 */ addu $t2, $t6, $t1 /* 08C770 8008BB70 448A2000 */ mtc1 $t2, $f4 /* 08C774 8008BB74 000B60C0 */ sll $t4, $t3, 3 /* 08C778 8008BB78 8FBF0014 */ lw $ra, 0x14($sp) /* 08C77C 8008BB7C 468021A0 */ cvt.s.w $f6, $f4 /* 08C780 8008BB80 018B6023 */ subu $t4, $t4, $t3 /* 08C784 8008BB84 000C6140 */ sll $t4, $t4, 5 /* 08C788 8008BB88 3C018016 */ lui $at, %hi(D_80165C30) /* 08C78C 8008BB8C 002C0821 */ addu $at, $at, $t4 /* 08C790 8008BB90 27BD0018 */ addiu $sp, $sp, 0x18 /* 08C794 8008BB94 03E00008 */ jr $ra /* 08C798 8008BB98 E4265C30 */ swc1 $f6, %lo(D_80165C30)($at) /* 08C79C 8008BB9C 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08C7A0 8008BBA0 AFBF0014 */ sw $ra, 0x14($sp) /* 08C7A4 8008BBA4 AFA40020 */ sw $a0, 0x20($sp) /* 08C7A8 8008BBA8 AFA7002C */ sw $a3, 0x2c($sp) /* 08C7AC 8008BBAC AFA50024 */ sw $a1, 0x24($sp) /* 08C7B0 8008BBB0 AFA60028 */ sw $a2, 0x28($sp) /* 08C7B4 8008BBB4 0C0ADF8D */ jal random_int /* 08C7B8 8008BBB8 97A4002E */ lhu $a0, 0x2e($sp) /* 08C7BC 8008BBBC 97AE002E */ lhu $t6, 0x2e($sp) /* 08C7C0 8008BBC0 97A40032 */ lhu $a0, 0x32($sp) /* 08C7C4 8008BBC4 05C10003 */ bgez $t6, .L8008BBD4 /* 08C7C8 8008BBC8 000E7843 */ sra $t7, $t6, 1 /* 08C7CC 8008BBCC 25C10001 */ addiu $at, $t6, 1 /* 08C7D0 8008BBD0 00017843 */ sra $t7, $at, 1 .L8008BBD4: /* 08C7D4 8008BBD4 004FC023 */ subu $t8, $v0, $t7 /* 08C7D8 8008BBD8 0C0ADF8D */ jal random_int /* 08C7DC 8008BBDC A7B8001E */ sh $t8, 0x1e($sp) /* 08C7E0 8008BBE0 8FB90020 */ lw $t9, 0x20($sp) /* 08C7E4 8008BBE4 97AE0032 */ lhu $t6, 0x32($sp) /* 08C7E8 8008BBE8 87AA0026 */ lh $t2, 0x26($sp) /* 08C7EC 8008BBEC 001940C0 */ sll $t0, $t9, 3 /* 08C7F0 8008BBF0 87AB001E */ lh $t3, 0x1e($sp) /* 08C7F4 8008BBF4 3C098016 */ lui $t1, %hi(D_80165C18) # $t1, 0x8016 /* 08C7F8 8008BBF8 01194023 */ subu $t0, $t0, $t9 /* 08C7FC 8008BBFC 87AD002A */ lh $t5, 0x2a($sp) /* 08C800 8008BC00 00084140 */ sll $t0, $t0, 5 /* 08C804 8008BC04 25295C18 */ addiu $t1, %lo(D_80165C18) # addiu $t1, $t1, 0x5c18 /* 08C808 8008BC08 01091821 */ addu $v1, $t0, $t1 /* 08C80C 8008BC0C 014B6021 */ addu $t4, $t2, $t3 /* 08C810 8008BC10 448C2000 */ mtc1 $t4, $f4 /* 08C814 8008BC14 8FBF0014 */ lw $ra, 0x14($sp) /* 08C818 8008BC18 27BD0020 */ addiu $sp, $sp, 0x20 /* 08C81C 8008BC1C 468021A0 */ cvt.s.w $f6, $f4 /* 08C820 8008BC20 E4660010 */ swc1 $f6, 0x10($v1) /* 08C824 8008BC24 05C10003 */ bgez $t6, .L8008BC34 /* 08C828 8008BC28 000E7843 */ sra $t7, $t6, 1 /* 08C82C 8008BC2C 25C10001 */ addiu $at, $t6, 1 /* 08C830 8008BC30 00017843 */ sra $t7, $at, 1 .L8008BC34: /* 08C834 8008BC34 004FC023 */ subu $t8, $v0, $t7 /* 08C838 8008BC38 0018CC00 */ sll $t9, $t8, 0x10 /* 08C83C 8008BC3C 00194403 */ sra $t0, $t9, 0x10 /* 08C840 8008BC40 01A84821 */ addu $t1, $t5, $t0 /* 08C844 8008BC44 44894000 */ mtc1 $t1, $f8 /* 08C848 8008BC48 00000000 */ nop /* 08C84C 8008BC4C 468042A0 */ cvt.s.w $f10, $f8 /* 08C850 8008BC50 03E00008 */ jr $ra /* 08C854 8008BC54 E46A0014 */ swc1 $f10, 0x14($v1) /* 08C858 8008BC58 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08C85C 8008BC5C AFBF0014 */ sw $ra, 0x14($sp) /* 08C860 8008BC60 AFA40020 */ sw $a0, 0x20($sp) /* 08C864 8008BC64 AFA7002C */ sw $a3, 0x2c($sp) /* 08C868 8008BC68 AFA50024 */ sw $a1, 0x24($sp) /* 08C86C 8008BC6C AFA60028 */ sw $a2, 0x28($sp) /* 08C870 8008BC70 0C0ADF8D */ jal random_int /* 08C874 8008BC74 97A4002E */ lhu $a0, 0x2e($sp) /* 08C878 8008BC78 97AE002E */ lhu $t6, 0x2e($sp) /* 08C87C 8008BC7C 97A40032 */ lhu $a0, 0x32($sp) /* 08C880 8008BC80 05C10003 */ bgez $t6, .L8008BC90 /* 08C884 8008BC84 000E7843 */ sra $t7, $t6, 1 /* 08C888 8008BC88 25C10001 */ addiu $at, $t6, 1 /* 08C88C 8008BC8C 00017843 */ sra $t7, $at, 1 .L8008BC90: /* 08C890 8008BC90 004FC023 */ subu $t8, $v0, $t7 /* 08C894 8008BC94 0C0ADF8D */ jal random_int /* 08C898 8008BC98 A7B8001E */ sh $t8, 0x1e($sp) /* 08C89C 8008BC9C 8FB90020 */ lw $t9, 0x20($sp) /* 08C8A0 8008BCA0 97AE0032 */ lhu $t6, 0x32($sp) /* 08C8A4 8008BCA4 87AA0026 */ lh $t2, 0x26($sp) /* 08C8A8 8008BCA8 001940C0 */ sll $t0, $t9, 3 /* 08C8AC 8008BCAC 87AB001E */ lh $t3, 0x1e($sp) /* 08C8B0 8008BCB0 3C098016 */ lui $t1, %hi(D_80165C18) # $t1, 0x8016 /* 08C8B4 8008BCB4 01194023 */ subu $t0, $t0, $t9 /* 08C8B8 8008BCB8 87AD002A */ lh $t5, 0x2a($sp) /* 08C8BC 8008BCBC 00084140 */ sll $t0, $t0, 5 /* 08C8C0 8008BCC0 25295C18 */ addiu $t1, %lo(D_80165C18) # addiu $t1, $t1, 0x5c18 /* 08C8C4 8008BCC4 01091821 */ addu $v1, $t0, $t1 /* 08C8C8 8008BCC8 014B6021 */ addu $t4, $t2, $t3 /* 08C8CC 8008BCCC 448C2000 */ mtc1 $t4, $f4 /* 08C8D0 8008BCD0 8FBF0014 */ lw $ra, 0x14($sp) /* 08C8D4 8008BCD4 27BD0020 */ addiu $sp, $sp, 0x20 /* 08C8D8 8008BCD8 468021A0 */ cvt.s.w $f6, $f4 /* 08C8DC 8008BCDC E4660010 */ swc1 $f6, 0x10($v1) /* 08C8E0 8008BCE0 05C10003 */ bgez $t6, .L8008BCF0 /* 08C8E4 8008BCE4 000E7843 */ sra $t7, $t6, 1 /* 08C8E8 8008BCE8 25C10001 */ addiu $at, $t6, 1 /* 08C8EC 8008BCEC 00017843 */ sra $t7, $at, 1 .L8008BCF0: /* 08C8F0 8008BCF0 004FC023 */ subu $t8, $v0, $t7 /* 08C8F4 8008BCF4 0018CC00 */ sll $t9, $t8, 0x10 /* 08C8F8 8008BCF8 00194403 */ sra $t0, $t9, 0x10 /* 08C8FC 8008BCFC 01A84821 */ addu $t1, $t5, $t0 /* 08C900 8008BD00 44894000 */ mtc1 $t1, $f8 /* 08C904 8008BD04 00000000 */ nop /* 08C908 8008BD08 468042A0 */ cvt.s.w $f10, $f8 /* 08C90C 8008BD0C 03E00008 */ jr $ra /* 08C910 8008BD10 E46A0018 */ swc1 $f10, 0x18($v1) glabel func_8008BD14 /* 08C914 8008BD14 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08C918 8008BD18 AFBF0014 */ sw $ra, 0x14($sp) /* 08C91C 8008BD1C AFA40020 */ sw $a0, 0x20($sp) /* 08C920 8008BD20 AFA50024 */ sw $a1, 0x24($sp) /* 08C924 8008BD24 AFA60028 */ sw $a2, 0x28($sp) /* 08C928 8008BD28 AFA7002C */ sw $a3, 0x2c($sp) /* 08C92C 8008BD2C 0C0ADF8D */ jal random_int /* 08C930 8008BD30 97A40032 */ lhu $a0, 0x32($sp) /* 08C934 8008BD34 97AE0032 */ lhu $t6, 0x32($sp) /* 08C938 8008BD38 97A40036 */ lhu $a0, 0x36($sp) /* 08C93C 8008BD3C 05C10003 */ bgez $t6, .L8008BD4C /* 08C940 8008BD40 000E7843 */ sra $t7, $t6, 1 /* 08C944 8008BD44 25C10001 */ addiu $at, $t6, 1 /* 08C948 8008BD48 00017843 */ sra $t7, $at, 1 .L8008BD4C: /* 08C94C 8008BD4C 004FC023 */ subu $t8, $v0, $t7 /* 08C950 8008BD50 0C0ADF8D */ jal random_int /* 08C954 8008BD54 A7B8001E */ sh $t8, 0x1e($sp) /* 08C958 8008BD58 97B90036 */ lhu $t9, 0x36($sp) /* 08C95C 8008BD5C 97A4003A */ lhu $a0, 0x3a($sp) /* 08C960 8008BD60 07210003 */ bgez $t9, .L8008BD70 /* 08C964 8008BD64 00194043 */ sra $t0, $t9, 1 /* 08C968 8008BD68 27210001 */ addiu $at, $t9, 1 /* 08C96C 8008BD6C 00014043 */ sra $t0, $at, 1 .L8008BD70: /* 08C970 8008BD70 00484823 */ subu $t1, $v0, $t0 /* 08C974 8008BD74 0C0ADF8D */ jal random_int /* 08C978 8008BD78 A7A9001C */ sh $t1, 0x1c($sp) /* 08C97C 8008BD7C 8FAA0020 */ lw $t2, 0x20($sp) /* 08C980 8008BD80 3C0C8016 */ lui $t4, %hi(D_80165C18) # $t4, 0x8016 /* 08C984 8008BD84 258C5C18 */ addiu $t4, %lo(D_80165C18) # addiu $t4, $t4, 0x5c18 /* 08C988 8008BD88 000A58C0 */ sll $t3, $t2, 3 /* 08C98C 8008BD8C 016A5823 */ subu $t3, $t3, $t2 /* 08C990 8008BD90 000B5940 */ sll $t3, $t3, 5 /* 08C994 8008BD94 016C1821 */ addu $v1, $t3, $t4 /* 08C998 8008BD98 87AD0026 */ lh $t5, 0x26($sp) /* 08C99C 8008BD9C 87AE001E */ lh $t6, 0x1e($sp) /* 08C9A0 8008BDA0 97AA003A */ lhu $t2, 0x3a($sp) /* 08C9A4 8008BDA4 87B8002A */ lh $t8, 0x2a($sp) /* 08C9A8 8008BDA8 87B9001C */ lh $t9, 0x1c($sp) /* 08C9AC 8008BDAC 01AE7821 */ addu $t7, $t5, $t6 /* 08C9B0 8008BDB0 87A9002E */ lh $t1, 0x2e($sp) /* 08C9B4 8008BDB4 448F2000 */ mtc1 $t7, $f4 /* 08C9B8 8008BDB8 03194021 */ addu $t0, $t8, $t9 /* 08C9BC 8008BDBC 44884000 */ mtc1 $t0, $f8 /* 08C9C0 8008BDC0 468021A0 */ cvt.s.w $f6, $f4 /* 08C9C4 8008BDC4 8FBF0014 */ lw $ra, 0x14($sp) /* 08C9C8 8008BDC8 27BD0020 */ addiu $sp, $sp, 0x20 /* 08C9CC 8008BDCC 468042A0 */ cvt.s.w $f10, $f8 /* 08C9D0 8008BDD0 E4660010 */ swc1 $f6, 0x10($v1) /* 08C9D4 8008BDD4 E46A0014 */ swc1 $f10, 0x14($v1) /* 08C9D8 8008BDD8 05410003 */ bgez $t2, .L8008BDE8 /* 08C9DC 8008BDDC 000A5843 */ sra $t3, $t2, 1 /* 08C9E0 8008BDE0 25410001 */ addiu $at, $t2, 1 /* 08C9E4 8008BDE4 00015843 */ sra $t3, $at, 1 .L8008BDE8: /* 08C9E8 8008BDE8 004B6023 */ subu $t4, $v0, $t3 /* 08C9EC 8008BDEC 000C6C00 */ sll $t5, $t4, 0x10 /* 08C9F0 8008BDF0 000D7403 */ sra $t6, $t5, 0x10 /* 08C9F4 8008BDF4 012E7821 */ addu $t7, $t1, $t6 /* 08C9F8 8008BDF8 448F8000 */ mtc1 $t7, $f16 /* 08C9FC 8008BDFC 00000000 */ nop /* 08CA00 8008BE00 468084A0 */ cvt.s.w $f18, $f16 /* 08CA04 8008BE04 03E00008 */ jr $ra /* 08CA08 8008BE08 E4720018 */ swc1 $f18, 0x18($v1) glabel func_8008BE0C /* 08CA0C 8008BE0C 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08CA10 8008BE10 AFBF0014 */ sw $ra, 0x14($sp) /* 08CA14 8008BE14 AFA40020 */ sw $a0, 0x20($sp) /* 08CA18 8008BE18 AFA60028 */ sw $a2, 0x28($sp) /* 08CA1C 8008BE1C AFA50024 */ sw $a1, 0x24($sp) /* 08CA20 8008BE20 0C0AE006 */ jal func_802B8018 /* 08CA24 8008BE24 97A4002A */ lhu $a0, 0x2a($sp) /* 08CA28 8008BE28 87B90026 */ lh $t9, 0x26($sp) /* 08CA2C 8008BE2C 3C08800E */ lui $t0, %hi(D_800DC4FC) # $t0, 0x800e /* 08CA30 8008BE30 8D08C4FC */ lw $t0, %lo(D_800DC4FC)($t0) /* 08CA34 8008BE34 44992000 */ mtc1 $t9, $f4 /* 08CA38 8008BE38 8FAE0020 */ lw $t6, 0x20($sp) /* 08CA3C 8008BE3C C5080014 */ lwc1 $f8, 0x14($t0) /* 08CA40 8008BE40 468020A0 */ cvt.s.w $f2, $f4 /* 08CA44 8008BE44 000E78C0 */ sll $t7, $t6, 3 /* 08CA48 8008BE48 3C188016 */ lui $t8, %hi(D_80165C18) # $t8, 0x8016 /* 08CA4C 8008BE4C 01EE7823 */ subu $t7, $t7, $t6 /* 08CA50 8008BE50 000F7940 */ sll $t7, $t7, 5 /* 08CA54 8008BE54 27185C18 */ addiu $t8, %lo(D_80165C18) # addiu $t8, $t8, 0x5c18 /* 08CA58 8008BE58 46020182 */ mul.s $f6, $f0, $f2 /* 08CA5C 8008BE5C 01F81021 */ addu $v0, $t7, $t8 /* 08CA60 8008BE60 AFA2001C */ sw $v0, 0x1c($sp) /* 08CA64 8008BE64 E7A20018 */ swc1 $f2, 0x18($sp) /* 08CA68 8008BE68 97A4002A */ lhu $a0, 0x2a($sp) /* 08CA6C 8008BE6C 46083280 */ add.s $f10, $f6, $f8 /* 08CA70 8008BE70 0C0AE00E */ jal func_802B8038 /* 08CA74 8008BE74 E44A0010 */ swc1 $f10, 0x10($v0) /* 08CA78 8008BE78 C7A20018 */ lwc1 $f2, 0x18($sp) /* 08CA7C 8008BE7C 3C09800E */ lui $t1, %hi(D_800DC4FC) # $t1, 0x800e /* 08CA80 8008BE80 8D29C4FC */ lw $t1, %lo(D_800DC4FC)($t1) /* 08CA84 8008BE84 46020402 */ mul.s $f16, $f0, $f2 /* 08CA88 8008BE88 8FBF0014 */ lw $ra, 0x14($sp) /* 08CA8C 8008BE8C C532001C */ lwc1 $f18, 0x1c($t1) /* 08CA90 8008BE90 8FA2001C */ lw $v0, 0x1c($sp) /* 08CA94 8008BE94 27BD0020 */ addiu $sp, $sp, 0x20 /* 08CA98 8008BE98 46128100 */ add.s $f4, $f16, $f18 /* 08CA9C 8008BE9C 03E00008 */ jr $ra /* 08CAA0 8008BEA0 E4440018 */ swc1 $f4, 0x18($v0) /* 08CAA4 8008BEA4 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 08CAA8 8008BEA8 AFBF0014 */ sw $ra, 0x14($sp) /* 08CAAC 8008BEAC AFA40020 */ sw $a0, 0x20($sp) /* 08CAB0 8008BEB0 AFA50024 */ sw $a1, 0x24($sp) /* 08CAB4 8008BEB4 AFA60028 */ sw $a2, 0x28($sp) /* 08CAB8 8008BEB8 0C0ADF8D */ jal random_int /* 08CABC 8008BEBC 30A4FFFF */ andi $a0, $a1, 0xffff /* 08CAC0 8008BEC0 A7A2001E */ sh $v0, 0x1e($sp) /* 08CAC4 8008BEC4 0C0ADF8D */ jal random_int /* 08CAC8 8008BEC8 97A4002A */ lhu $a0, 0x2a($sp) /* 08CACC 8008BECC 3C0F800E */ lui $t7, %hi(D_800DDB40) # $t7, 0x800e /* 08CAD0 8008BED0 8DEFDB40 */ lw $t7, %lo(D_800DDB40)($t7) /* 08CAD4 8008BED4 97A8002A */ lhu $t0, 0x2a($sp) /* 08CAD8 8008BED8 8FA40020 */ lw $a0, 0x20($sp) /* 08CADC 8008BEDC 85F80026 */ lh $t8, 0x26($t7) /* 08CAE0 8008BEE0 87A5001E */ lh $a1, 0x1e($sp) /* 08CAE4 8008BEE4 0058C821 */ addu $t9, $v0, $t8 /* 08CAE8 8008BEE8 05010003 */ bgez $t0, .L8008BEF8 /* 08CAEC 8008BEEC 00084843 */ sra $t1, $t0, 1 /* 08CAF0 8008BEF0 25010001 */ addiu $at, $t0, 1 /* 08CAF4 8008BEF4 00014843 */ sra $t1, $at, 1 .L8008BEF8: /* 08CAF8 8008BEF8 03293023 */ subu $a2, $t9, $t1 /* 08CAFC 8008BEFC 30CAFFFF */ andi $t2, $a2, 0xffff /* 08CB00 8008BF00 0C022F83 */ jal func_8008BE0C /* 08CB04 8008BF04 01403025 */ move $a2, $t2 /* 08CB08 8008BF08 8FBF0014 */ lw $ra, 0x14($sp) /* 08CB0C 8008BF0C 27BD0020 */ addiu $sp, $sp, 0x20 /* 08CB10 8008BF10 03E00008 */ jr $ra /* 08CB14 8008BF14 00000000 */ nop glabel func_8008BF18 /* 08CB18 8008BF18 000470C0 */ sll $t6, $a0, 3 /* 08CB1C 8008BF1C 01C47023 */ subu $t6, $t6, $a0 /* 08CB20 8008BF20 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08CB24 8008BF24 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08CB28 8008BF28 000E7140 */ sll $t6, $t6, 5 /* 08CB2C 8008BF2C 01CF1021 */ addu $v0, $t6, $t7 /* 08CB30 8008BF30 C4440028 */ lwc1 $f4, 0x28($v0) /* 08CB34 8008BF34 C4460010 */ lwc1 $f6, 0x10($v0) /* 08CB38 8008BF38 C44A002C */ lwc1 $f10, 0x2c($v0) /* 08CB3C 8008BF3C C4500014 */ lwc1 $f16, 0x14($v0) /* 08CB40 8008BF40 46062200 */ add.s $f8, $f4, $f6 /* 08CB44 8008BF44 C4460018 */ lwc1 $f6, 0x18($v0) /* 08CB48 8008BF48 C4440030 */ lwc1 $f4, 0x30($v0) /* 08CB4C 8008BF4C 46105480 */ add.s $f18, $f10, $f16 /* 08CB50 8008BF50 E4480004 */ swc1 $f8, 4($v0) /* 08CB54 8008BF54 46062200 */ add.s $f8, $f4, $f6 /* 08CB58 8008BF58 E4520008 */ swc1 $f18, 8($v0) /* 08CB5C 8008BF5C 03E00008 */ jr $ra /* 08CB60 8008BF60 E448000C */ swc1 $f8, 0xc($v0) /* 08CB64 8008BF64 000470C0 */ sll $t6, $a0, 3 /* 08CB68 8008BF68 01C47023 */ subu $t6, $t6, $a0 /* 08CB6C 8008BF6C 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08CB70 8008BF70 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08CB74 8008BF74 000E7140 */ sll $t6, $t6, 5 /* 08CB78 8008BF78 01CF1021 */ addu $v0, $t6, $t7 /* 08CB7C 8008BF7C 3C038018 */ lui $v1, %hi(D_80183E40) # $v1, 0x8018 /* 08CB80 8008BF80 3C058018 */ lui $a1, %hi(D_80183E80) # $a1, 0x8018 /* 08CB84 8008BF84 C4440004 */ lwc1 $f4, 4($v0) /* 08CB88 8008BF88 C4460008 */ lwc1 $f6, 8($v0) /* 08CB8C 8008BF8C C448000C */ lwc1 $f8, 0xc($v0) /* 08CB90 8008BF90 945800BE */ lhu $t8, 0xbe($v0) /* 08CB94 8008BF94 945900C0 */ lhu $t9, 0xc0($v0) /* 08CB98 8008BF98 944800C2 */ lhu $t0, 0xc2($v0) /* 08CB9C 8008BF9C 24A53E80 */ addiu $a1, %lo(D_80183E80) # addiu $a1, $a1, 0x3e80 /* 08CBA0 8008BFA0 24633E40 */ addiu $v1, %lo(D_80183E40) # addiu $v1, $v1, 0x3e40 /* 08CBA4 8008BFA4 E4640000 */ swc1 $f4, ($v1) /* 08CBA8 8008BFA8 E4660004 */ swc1 $f6, 4($v1) /* 08CBAC 8008BFAC E4680008 */ swc1 $f8, 8($v1) /* 08CBB0 8008BFB0 A4B80000 */ sh $t8, ($a1) /* 08CBB4 8008BFB4 A4B90002 */ sh $t9, 2($a1) /* 08CBB8 8008BFB8 03E00008 */ jr $ra /* 08CBBC 8008BFBC A4A80004 */ sh $t0, 4($a1) glabel func_8008BFC0 /* 08CBC0 8008BFC0 000470C0 */ sll $t6, $a0, 3 /* 08CBC4 8008BFC4 01C47023 */ subu $t6, $t6, $a0 /* 08CBC8 8008BFC8 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08CBCC 8008BFCC 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08CBD0 8008BFD0 000E7140 */ sll $t6, $t6, 5 /* 08CBD4 8008BFD4 01CF1021 */ addu $v0, $t6, $t7 /* 08CBD8 8008BFD8 C4440004 */ lwc1 $f4, 4($v0) /* 08CBDC 8008BFDC C4480008 */ lwc1 $f8, 8($v0) /* 08CBE0 8008BFE0 4600218D */ trunc.w.s $f6, $f4 /* 08CBE4 8008BFE4 4600428D */ trunc.w.s $f10, $f8 /* 08CBE8 8008BFE8 44193000 */ mfc1 $t9, $f6 /* 08CBEC 8008BFEC 44095000 */ mfc1 $t1, $f10 /* 08CBF0 8008BFF0 A459009C */ sh $t9, 0x9c($v0) /* 08CBF4 8008BFF4 03E00008 */ jr $ra /* 08CBF8 8008BFF8 A449009E */ sh $t1, 0x9e($v0) glabel func_8008BFFC /* 08CBFC 8008BFFC 000470C0 */ sll $t6, $a0, 3 /* 08CC00 8008C000 01C47023 */ subu $t6, $t6, $a0 /* 08CC04 8008C004 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016 /* 08CC08 8008C008 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18 /* 08CC0C 8008C00C 000E7140 */ sll $t6, $t6, 5 /* 08CC10 8008C010 01CF1821 */ addu $v1, $t6, $t7 /* 08CC14 8008C014 907800DE */ lbu $t8, 0xde($v1) /* 08CC18 8008C018 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 08CC1C 8008C01C AFBF0014 */ sw $ra, 0x14($sp) /* 08CC20 8008C020 2F010008 */ sltiu $at, $t8, 8 /* 08CC24 8008C024 10200060 */ beqz $at, .L8008C1A8 /* 08CC28 8008C028 0018C080 */ sll $t8, $t8, 2 /* 08CC2C 8008C02C 3C01800F */ lui $at, %hi(D_800EF518) /* 08CC30 8008C030 00380821 */ addu $at, $at, $t8 /* 08CC34 8008C034 8C38F518 */ lw $t8, %lo(D_800EF518)($at) /* 08CC38 8008C038 03000008 */ jr $t8 /* 08CC3C 8008C03C 00000000 */ nop glabel L8008C040 /* 08CC40 8008C040 847900AE */ lh $t9, 0xae($v1) /* 08CC44 8008C044 24010001 */ li $at, 1 /* 08CC48 8008C048 57210058 */ bnel $t9, $at, .L8008C1AC /* 08CC4C 8008C04C 8FBF0014 */ lw $ra, 0x14($sp) /* 08CC50 8008C050 0C022D88 */ jal func_8008B620 /* 08CC54 8008C054 00000000 */ nop /* 08CC58 8008C058 10000054 */ b .L8008C1AC /* 08CC5C 8008C05C 8FBF0014 */ lw $ra, 0x14($sp) glabel L8008C060 /* 08CC60 8008C060 846200AE */ lh $v0, 0xae($v1) /* 08CC64 8008C064 24010001 */ li $at, 1 /* 08CC68 8008C068 50400050 */ beql $v0, $zero, .L8008C1AC /* 08CC6C 8008C06C 8FBF0014 */ lw $ra, 0x14($sp) /* 08CC70 8008C070 5441004E */ bnel $v0, $at, .L8008C1AC /* 08CC74 8008C074 8FBF0014 */ lw $ra, 0x14($sp) /* 08CC78 8008C078 0C022DA9 */ jal func_8008B6A4 /* 08CC7C 8008C07C 00000000 */ nop /* 08CC80 8008C080 1000004A */ b .L8008C1AC /* 08CC84 8008C084 8FBF0014 */ lw $ra, 0x14($sp) glabel L8008C088 /* 08CC88 8008C088 846200AE */ lh $v0, 0xae($v1) /* 08CC8C 8008C08C 24010001 */ li $at, 1 /* 08CC90 8008C090 50400046 */ beql $v0, $zero, .L8008C1AC /* 08CC94 8008C094 8FBF0014 */ lw $ra, 0x14($sp) /* 08CC98 8008C098 54410044 */ bnel $v0, $at, .L8008C1AC /* 08CC9C 8008C09C 8FBF0014 */ lw $ra, 0x14($sp) /* 08CCA0 8008C0A0 0C022D88 */ jal func_8008B620 /* 08CCA4 8008C0A4 00000000 */ nop /* 08CCA8 8008C0A8 10000040 */ b .L8008C1AC /* 08CCAC 8008C0AC 8FBF0014 */ lw $ra, 0x14($sp) glabel L8008C0B0 /* 08CCB0 8008C0B0 846200AE */ lh $v0, 0xae($v1) /* 08CCB4 8008C0B4 24010001 */ li $at, 1 /* 08CCB8 8008C0B8 5040003C */ beql $v0, $zero, .L8008C1AC /* 08CCBC 8008C0BC 8FBF0014 */ lw $ra, 0x14($sp) /* 08CCC0 8008C0C0 10410005 */ beq $v0, $at, .L8008C0D8 /* 08CCC4 8008C0C4 24010002 */ li $at, 2 /* 08CCC8 8008C0C8 10410007 */ beq $v0, $at, .L8008C0E8 /* 08CCCC 8008C0CC 00000000 */ nop /* 08CCD0 8008C0D0 10000036 */ b .L8008C1AC /* 08CCD4 8008C0D4 8FBF0014 */ lw $ra, 0x14($sp) .L8008C0D8: /* 08CCD8 8008C0D8 0C022D88 */ jal func_8008B620 /* 08CCDC 8008C0DC 00000000 */ nop /* 08CCE0 8008C0E0 10000032 */ b .L8008C1AC /* 08CCE4 8008C0E4 8FBF0014 */ lw $ra, 0x14($sp) .L8008C0E8: /* 08CCE8 8008C0E8 0C021BD8 */ jal func_80086F60 /* 08CCEC 8008C0EC 00000000 */ nop /* 08CCF0 8008C0F0 1000002E */ b .L8008C1AC /* 08CCF4 8008C0F4 8FBF0014 */ lw $ra, 0x14($sp) glabel L8008C0F8 /* 08CCF8 8008C0F8 846200AE */ lh $v0, 0xae($v1) /* 08CCFC 8008C0FC 24010001 */ li $at, 1 /* 08CD00 8008C100 5040002A */ beql $v0, $zero, .L8008C1AC /* 08CD04 8008C104 8FBF0014 */ lw $ra, 0x14($sp) /* 08CD08 8008C108 10410005 */ beq $v0, $at, .L8008C120 /* 08CD0C 8008C10C 24010002 */ li $at, 2 /* 08CD10 8008C110 10410007 */ beq $v0, $at, .L8008C130 /* 08CD14 8008C114 00000000 */ nop /* 08CD18 8008C118 10000024 */ b .L8008C1AC /* 08CD1C 8008C11C 8FBF0014 */ lw $ra, 0x14($sp) .L8008C120: /* 08CD20 8008C120 0C022D88 */ jal func_8008B620 /* 08CD24 8008C124 00000000 */ nop /* 08CD28 8008C128 10000020 */ b .L8008C1AC /* 08CD2C 8008C12C 8FBF0014 */ lw $ra, 0x14($sp) .L8008C130: /* 08CD30 8008C130 0C021BD8 */ jal func_80086F60 /* 08CD34 8008C134 00000000 */ nop /* 08CD38 8008C138 1000001C */ b .L8008C1AC /* 08CD3C 8008C13C 8FBF0014 */ lw $ra, 0x14($sp) glabel L8008C140 /* 08CD40 8008C140 846200AE */ lh $v0, 0xae($v1) /* 08CD44 8008C144 24010001 */ li $at, 1 /* 08CD48 8008C148 50400018 */ beql $v0, $zero, .L8008C1AC /* 08CD4C 8008C14C 8FBF0014 */ lw $ra, 0x14($sp) /* 08CD50 8008C150 54410016 */ bnel $v0, $at, .L8008C1AC /* 08CD54 8008C154 8FBF0014 */ lw $ra, 0x14($sp) /* 08CD58 8008C158 0C022D88 */ jal func_8008B620 /* 08CD5C 8008C15C 00000000 */ nop /* 08CD60 8008C160 10000012 */ b .L8008C1AC /* 08CD64 8008C164 8FBF0014 */ lw $ra, 0x14($sp) glabel L8008C168 /* 08CD68 8008C168 846200AE */ lh $v0, 0xae($v1) /* 08CD6C 8008C16C 24010001 */ li $at, 1 /* 08CD70 8008C170 5040000E */ beql $v0, $zero, .L8008C1AC /* 08CD74 8008C174 8FBF0014 */ lw $ra, 0x14($sp) /* 08CD78 8008C178 10410005 */ beq $v0, $at, .L8008C190 /* 08CD7C 8008C17C 24010002 */ li $at, 2 /* 08CD80 8008C180 10410007 */ beq $v0, $at, .L8008C1A0 /* 08CD84 8008C184 00000000 */ nop /* 08CD88 8008C188 10000008 */ b .L8008C1AC /* 08CD8C 8008C18C 8FBF0014 */ lw $ra, 0x14($sp) .L8008C190: /* 08CD90 8008C190 0C02208A */ jal func_80088228 /* 08CD94 8008C194 00000000 */ nop /* 08CD98 8008C198 10000004 */ b .L8008C1AC /* 08CD9C 8008C19C 8FBF0014 */ lw $ra, 0x14($sp) .L8008C1A0: /* 08CDA0 8008C1A0 0C0220D9 */ jal func_80088364 /* 08CDA4 8008C1A4 00000000 */ nop .L8008C1A8: glabel L8008C1A8 /* 08CDA8 8008C1A8 8FBF0014 */ lw $ra, 0x14($sp) .L8008C1AC: /* 08CDAC 8008C1AC 27BD0018 */ addiu $sp, $sp, 0x18 /* 08CDB0 8008C1B0 03E00008 */ jr $ra /* 08CDB4 8008C1B4 00000000 */ nop /* 08CDB8 8008C1B8 03E00008 */ jr $ra /* 08CDBC 8008C1BC AFA40000 */ sw $a0, ($sp) /* 08CDC0 8008C1C0 03E00008 */ jr $ra /* 08CDC4 8008C1C4 AFA40000 */ sw $a0, ($sp) /* 08CDC8 8008C1C8 00000000 */ nop /* 08CDCC 8008C1CC 00000000 */ nop