split unknown_005740

This commit is contained in:
David Benepe
2020-06-30 19:36:42 -05:00
parent f4f10434ff
commit 65b27647e1
246 changed files with 35706 additions and 35463 deletions
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,377 @@
glabel func_80004B40
/* 005740 80004B40 27BDFFA8 */ addiu $sp, $sp, -0x58
/* 005744 80004B44 AFB30024 */ sw $s3, 0x24($sp)
/* 005748 80004B48 AFB00018 */ sw $s0, 0x18($sp)
/* 00574C 80004B4C 2881000B */ slti $at, $a0, 0xb
/* 005750 80004B50 00808025 */ move $s0, $a0
/* 005754 80004B54 00A09825 */ move $s3, $a1
/* 005758 80004B58 AFBF0034 */ sw $ra, 0x34($sp)
/* 00575C 80004B5C AFB60030 */ sw $s6, 0x30($sp)
/* 005760 80004B60 AFB5002C */ sw $s5, 0x2c($sp)
/* 005764 80004B64 AFB40028 */ sw $s4, 0x28($sp)
/* 005768 80004B68 AFB20020 */ sw $s2, 0x20($sp)
/* 00576C 80004B6C 14200002 */ bnez $at, .L80004B78
/* 005770 80004B70 AFB1001C */ sw $s1, 0x1c($sp)
/* 005774 80004B74 2410000B */ li $s0, 11
.L80004B78:
/* 005778 80004B78 3C0E800E */ lui $t6, %hi(D_800DC6D8) # $t6, 0x800e
/* 00577C 80004B7C 8DCEC6D8 */ lw $t6, %lo(D_800DC6D8)($t6)
/* 005780 80004B80 00000000 */ nop
/* 005784 80004B84 11C00009 */ beqz $t6, .L80004BAC
/* 005788 80004B88 3C028012 */ lui $v0, %hi(D_80119C30) # $v0, 0x8012
/* 00578C 80004B8C 3C038012 */ lui $v1, %hi(D_80119C38) # $v1, 0x8012
/* 005790 80004B90 24639C38 */ addiu $v1, %lo(D_80119C38) # addiu $v1, $v1, -0x63c8
/* 005794 80004B94 24429C30 */ addiu $v0, %lo(D_80119C30) # addiu $v0, $v0, -0x63d0
.L80004B98:
/* 005798 80004B98 24420004 */ addiu $v0, $v0, 4
/* 00579C 80004B9C 1443FFFE */ bne $v0, $v1, .L80004B98
/* 0057A0 80004BA0 AC40FFFC */ sw $zero, -4($v0)
/* 0057A4 80004BA4 3C01800E */ lui $at, %hi(D_800DC6D8) # $at, 0x800e
/* 0057A8 80004BA8 AC20C6D8 */ sw $zero, %lo(D_800DC6D8)($at)
.L80004BAC:
/* 0057AC 80004BAC 0C01DB16 */ jal func_80076C58
/* 0057B0 80004BB0 24040026 */ li $a0, 38
/* 0057B4 80004BB4 0013B080 */ sll $s6, $s3, 2
/* 0057B8 80004BB8 02D3B021 */ addu $s6, $s6, $s3
/* 0057BC 80004BBC 0016B040 */ sll $s6, $s6, 1
/* 0057C0 80004BC0 02D0C021 */ addu $t8, $s6, $s0
/* 0057C4 80004BC4 0018C880 */ sll $t9, $t8, 2
/* 0057C8 80004BC8 0338C821 */ addu $t9, $t9, $t8
/* 0057CC 80004BCC AFA2003C */ sw $v0, 0x3c($sp)
/* 0057D0 80004BD0 0019C880 */ sll $t9, $t9, 2
/* 0057D4 80004BD4 8C4F001C */ lw $t7, 0x1c($v0)
/* 0057D8 80004BD8 3C1200FF */ lui $s2, %hi(D_00FF0018) # $s2, 0xff
/* 0057DC 80004BDC 0338C823 */ subu $t9, $t9, $t8
/* 0057E0 80004BE0 3652FFFF */ ori $s2, (0x00FFFFFF & 0xFFFF) # ori $s2, $s2, 0xffff
/* 0057E4 80004BE4 0019C880 */ sll $t9, $t9, 2
/* 0057E8 80004BE8 02402825 */ move $a1, $s2
/* 0057EC 80004BEC 2404004C */ li $a0, 76
/* 0057F0 80004BF0 0C01C327 */ jal func_80070C9C
/* 0057F4 80004BF4 01F98821 */ addu $s1, $t7, $t9
/* 0057F8 80004BF8 0040A825 */ move $s5, $v0
/* 0057FC 80004BFC 24040027 */ li $a0, 39
/* 005800 80004C00 00402825 */ move $a1, $v0
/* 005804 80004C04 02203025 */ move $a2, $s1
/* 005808 80004C08 0C01DB9A */ jal func_80076E68
/* 00580C 80004C0C 2407004C */ li $a3, 76
/* 005810 80004C10 240400E0 */ li $a0, 224
/* 005814 80004C14 0C01C327 */ jal func_80070C9C
/* 005818 80004C18 02402825 */ move $a1, $s2
/* 00581C 80004C1C AFA20044 */ sw $v0, 0x44($sp)
/* 005820 80004C20 00401825 */ move $v1, $v0
/* 005824 80004C24 00003825 */ move $a3, $zero
/* 005828 80004C28 240400E0 */ li $a0, 224
.L80004C2C:
/* 00582C 80004C2C 24E70004 */ addiu $a3, $a3, 4
/* 005830 80004C30 A0600001 */ sb $zero, 1($v1)
/* 005834 80004C34 A0600002 */ sb $zero, 2($v1)
/* 005838 80004C38 A0600003 */ sb $zero, 3($v1)
/* 00583C 80004C3C 24630004 */ addiu $v1, $v1, 4
/* 005840 80004C40 14E4FFFA */ bne $a3, $a0, .L80004C2C
/* 005844 80004C44 A060FFFC */ sb $zero, -4($v1)
/* 005848 80004C48 92AE0036 */ lbu $t6, 0x36($s5)
/* 00584C 80004C4C 3C01800E */ lui $at, %hi(D_800E4BF0) # $at, 0x800e
/* 005850 80004C50 C4224BF0 */ lwc1 $f2, %lo(D_800E4BF0)($at)
/* 005854 80004C54 A04E0036 */ sb $t6, 0x36($v0)
/* 005858 80004C58 92B80037 */ lbu $t8, 0x37($s5)
/* 00585C 80004C5C 00008025 */ move $s0, $zero
/* 005860 80004C60 A0580037 */ sb $t8, 0x37($v0)
/* 005864 80004C64 92AF0038 */ lbu $t7, 0x38($s5)
/* 005868 80004C68 02A08825 */ move $s1, $s5
/* 00586C 80004C6C A04F0038 */ sb $t7, 0x38($v0)
/* 005870 80004C70 92B90039 */ lbu $t9, 0x39($s5)
/* 005874 80004C74 02A05825 */ move $t3, $s5
/* 005878 80004C78 A0590039 */ sb $t9, 0x39($v0)
/* 00587C 80004C7C 92AE003A */ lbu $t6, 0x3a($s5)
/* 005880 80004C80 02A06025 */ move $t4, $s5
/* 005884 80004C84 A04E0064 */ sb $t6, 0x64($v0)
/* 005888 80004C88 86B80046 */ lh $t8, 0x46($s5)
/* 00588C 80004C8C 00406825 */ move $t5, $v0
/* 005890 80004C90 44982000 */ mtc1 $t8, $f4
/* 005894 80004C94 0040F825 */ move $ra, $v0
/* 005898 80004C98 468021A0 */ cvt.s.w $f6, $f4
/* 00589C 80004C9C 00404825 */ move $t1, $v0
/* 0058A0 80004CA0 02A05025 */ move $t2, $s5
/* 0058A4 80004CA4 46023203 */ div.s $f8, $f6, $f2
/* 0058A8 80004CA8 00409025 */ move $s2, $v0
/* 0058AC 80004CAC 02A09825 */ move $s3, $s5
/* 0058B0 80004CB0 0040A025 */ move $s4, $v0
/* 0058B4 80004CB4 24080005 */ li $t0, 5
/* 0058B8 80004CB8 E44800C8 */ swc1 $f8, 0xc8($v0)
/* 0058BC 80004CBC 86AF003E */ lh $t7, 0x3e($s5)
/* 0058C0 80004CC0 00000000 */ nop
/* 0058C4 80004CC4 448F5000 */ mtc1 $t7, $f10
/* 0058C8 80004CC8 00000000 */ nop
/* 0058CC 80004CCC 46805420 */ cvt.s.w $f16, $f10
/* 0058D0 80004CD0 00000000 */ nop
/* 0058D4 80004CD4 46028483 */ div.s $f18, $f16, $f2
/* 0058D8 80004CD8 E45200B0 */ swc1 $f18, 0xb0($v0)
/* 0058DC 80004CDC 86B90040 */ lh $t9, 0x40($s5)
/* 0058E0 80004CE0 00000000 */ nop
/* 0058E4 80004CE4 44992000 */ mtc1 $t9, $f4
/* 0058E8 80004CE8 00000000 */ nop
/* 0058EC 80004CEC 468021A0 */ cvt.s.w $f6, $f4
/* 0058F0 80004CF0 00000000 */ nop
/* 0058F4 80004CF4 46023203 */ div.s $f8, $f6, $f2
/* 0058F8 80004CF8 E44800B4 */ swc1 $f8, 0xb4($v0)
/* 0058FC 80004CFC 86AE0042 */ lh $t6, 0x42($s5)
/* 005900 80004D00 00000000 */ nop
/* 005904 80004D04 448E5000 */ mtc1 $t6, $f10
/* 005908 80004D08 00000000 */ nop
/* 00590C 80004D0C 46805420 */ cvt.s.w $f16, $f10
/* 005910 80004D10 00000000 */ nop
/* 005914 80004D14 46028483 */ div.s $f18, $f16, $f2
/* 005918 80004D18 E45200C0 */ swc1 $f18, 0xc0($v0)
/* 00591C 80004D1C 86B80044 */ lh $t8, 0x44($s5)
/* 005920 80004D20 00000000 */ nop
/* 005924 80004D24 44982000 */ mtc1 $t8, $f4
/* 005928 80004D28 00000000 */ nop
/* 00592C 80004D2C 468021A0 */ cvt.s.w $f6, $f4
/* 005930 80004D30 00000000 */ nop
/* 005934 80004D34 46023203 */ div.s $f8, $f6, $f2
/* 005938 80004D38 E44800C4 */ swc1 $f8, 0xc4($v0)
/* 00593C 80004D3C 86AF003C */ lh $t7, 0x3c($s5)
/* 005940 80004D40 00000000 */ nop
/* 005944 80004D44 448F5000 */ mtc1 $t7, $f10
/* 005948 80004D48 00000000 */ nop
/* 00594C 80004D4C 46805420 */ cvt.s.w $f16, $f10
/* 005950 80004D50 44805000 */ mtc1 $zero, $f10
/* 005954 80004D54 46028483 */ div.s $f18, $f16, $f2
/* 005958 80004D58 E45200BC */ swc1 $f18, 0xbc($v0)
/* 00595C 80004D5C 92B9003B */ lbu $t9, 0x3b($s5)
/* 005960 80004D60 00000000 */ nop
/* 005964 80004D64 A05900B8 */ sb $t9, 0xb8($v0)
/* 005968 80004D68 86AE0048 */ lh $t6, 0x48($s5)
/* 00596C 80004D6C A04000D8 */ sb $zero, 0xd8($v0)
/* 005970 80004D70 448E2000 */ mtc1 $t6, $f4
/* 005974 80004D74 00000000 */ nop
/* 005978 80004D78 468021A0 */ cvt.s.w $f6, $f4
/* 00597C 80004D7C 00000000 */ nop
/* 005980 80004D80 46023203 */ div.s $f8, $f6, $f2
/* 005984 80004D84 E44800CC */ swc1 $f8, 0xcc($v0)
.L80004D88:
/* 005988 80004D88 96380000 */ lhu $t8, ($s1)
/* 00598C 80004D8C 24070001 */ li $a3, 1
/* 005990 80004D90 A6980000 */ sh $t8, ($s4)
/* 005994 80004D94 914F0004 */ lbu $t7, 4($t2)
/* 005998 80004D98 25630001 */ addiu $v1, $t3, 1
/* 00599C 80004D9C A12F0004 */ sb $t7, 4($t1)
/* 0059A0 80004DA0 96790018 */ lhu $t9, 0x18($s3)
/* 0059A4 80004DA4 25850002 */ addiu $a1, $t4, 2
/* 0059A8 80004DA8 A6590018 */ sh $t9, %lo(D_00FF0018)($s2)
/* 0059AC 80004DAC 914E000E */ lbu $t6, 0xe($t2)
/* 0059B0 80004DB0 25A40001 */ addiu $a0, $t5, 1
/* 0059B4 80004DB4 A12E000E */ sb $t6, 0xe($t1)
/* 0059B8 80004DB8 9158002C */ lbu $t8, 0x2c($t2)
/* 0059BC 80004DBC 27E60002 */ addiu $a2, $ra, 2
/* 0059C0 80004DC0 A138002C */ sb $t8, 0x2c($t1)
.L80004DC4:
/* 0059C4 80004DC4 906F0004 */ lbu $t7, 4($v1)
/* 0059C8 80004DC8 24E70002 */ addiu $a3, $a3, 2
/* 0059CC 80004DCC A08F0004 */ sb $t7, 4($a0)
/* 0059D0 80004DD0 94B90018 */ lhu $t9, 0x18($a1)
/* 0059D4 80004DD4 24630002 */ addiu $v1, $v1, 2
/* 0059D8 80004DD8 A4D90018 */ sh $t9, 0x18($a2)
/* 0059DC 80004DDC 906E000C */ lbu $t6, 0xc($v1)
/* 0059E0 80004DE0 24A50004 */ addiu $a1, $a1, 4
/* 0059E4 80004DE4 A08E000E */ sb $t6, 0xe($a0)
/* 0059E8 80004DE8 9078002A */ lbu $t8, 0x2a($v1)
/* 0059EC 80004DEC 24840002 */ addiu $a0, $a0, 2
/* 0059F0 80004DF0 A098002A */ sb $t8, 0x2a($a0)
/* 0059F4 80004DF4 906F0003 */ lbu $t7, 3($v1)
/* 0059F8 80004DF8 24C60004 */ addiu $a2, $a2, 4
/* 0059FC 80004DFC A08F0003 */ sb $t7, 3($a0)
/* 005A00 80004E00 94B90016 */ lhu $t9, 0x16($a1)
/* 005A04 80004E04 00000000 */ nop
/* 005A08 80004E08 A4D90016 */ sh $t9, 0x16($a2)
/* 005A0C 80004E0C 906E000D */ lbu $t6, 0xd($v1)
/* 005A10 80004E10 00000000 */ nop
/* 005A14 80004E14 A08E000D */ sb $t6, 0xd($a0)
/* 005A18 80004E18 9078002B */ lbu $t8, 0x2b($v1)
/* 005A1C 80004E1C 14E8FFE9 */ bne $a3, $t0, .L80004DC4
/* 005A20 80004E20 A098002B */ sb $t8, 0x2b($a0)
/* 005A24 80004E24 26100002 */ addiu $s0, $s0, 2
/* 005A28 80004E28 2A010004 */ slti $at, $s0, 4
/* 005A2C 80004E2C 26310002 */ addiu $s1, $s1, 2
/* 005A30 80004E30 256B0005 */ addiu $t3, $t3, 5
/* 005A34 80004E34 258C000A */ addiu $t4, $t4, 0xa
/* 005A38 80004E38 25AD0005 */ addiu $t5, $t5, 5
/* 005A3C 80004E3C 27FF000A */ addiu $ra, $ra, 0xa
/* 005A40 80004E40 25290005 */ addiu $t1, $t1, 5
/* 005A44 80004E44 254A0005 */ addiu $t2, $t2, 5
/* 005A48 80004E48 2652000A */ addiu $s2, $s2, 0xa
/* 005A4C 80004E4C 2673000A */ addiu $s3, $s3, 0xa
/* 005A50 80004E50 1420FFCD */ bnez $at, .L80004D88
/* 005A54 80004E54 26940002 */ addiu $s4, $s4, 2
/* 005A58 80004E58 A0400074 */ sb $zero, 0x74($v0)
/* 005A5C 80004E5C E44A006C */ swc1 $f10, 0x6c($v0)
/* 005A60 80004E60 92AF004A */ lbu $t7, 0x4a($s5)
/* 005A64 80004E64 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
/* 005A68 80004E68 448F8000 */ mtc1 $t7, $f16
/* 005A6C 80004E6C 05E10004 */ bgez $t7, .L80004E80
/* 005A70 80004E70 468084A0 */ cvt.s.w $f18, $f16
/* 005A74 80004E74 44812000 */ mtc1 $at, $f4
/* 005A78 80004E78 00000000 */ nop
/* 005A7C 80004E7C 46049480 */ add.s $f18, $f18, $f4
.L80004E80:
/* 005A80 80004E80 3C0142C8 */ li $at, 0x42C80000 # 100.000000
/* 005A84 80004E84 44813000 */ mtc1 $at, $f6
/* 005A88 80004E88 00000000 */ nop
/* 005A8C 80004E8C 46069203 */ div.s $f8, $f18, $f6
/* 005A90 80004E90 16C0002B */ bnez $s6, .L80004F40
/* 005A94 80004E94 E44800D4 */ swc1 $f8, 0xd4($v0)
/* 005A98 80004E98 9059002C */ lbu $t9, 0x2c($v0)
/* 005A9C 80004E9C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
/* 005AA0 80004EA0 44995000 */ mtc1 $t9, $f10
/* 005AA4 80004EA4 07210004 */ bgez $t9, .L80004EB8
/* 005AA8 80004EA8 46805420 */ cvt.s.w $f16, $f10
/* 005AAC 80004EAC 44812000 */ mtc1 $at, $f4
/* 005AB0 80004EB0 00000000 */ nop
/* 005AB4 80004EB4 46048400 */ add.s $f16, $f16, $f4
.L80004EB8:
/* 005AB8 80004EB8 944E0018 */ lhu $t6, 0x18($v0)
/* 005ABC 80004EBC E4500054 */ swc1 $f16, 0x54($v0)
/* 005AC0 80004EC0 448E9000 */ mtc1 $t6, $f18
/* 005AC4 80004EC4 05C10005 */ bgez $t6, .L80004EDC
/* 005AC8 80004EC8 468091A0 */ cvt.s.w $f6, $f18
/* 005ACC 80004ECC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
/* 005AD0 80004ED0 44814000 */ mtc1 $at, $f8
/* 005AD4 80004ED4 00000000 */ nop
/* 005AD8 80004ED8 46083180 */ add.s $f6, $f6, $f8
.L80004EDC:
/* 005ADC 80004EDC 00000000 */ nop
/* 005AE0 80004EE0 46023283 */ div.s $f10, $f6, $f2
/* 005AE4 80004EE4 90580031 */ lbu $t8, 0x31($v0)
/* 005AE8 80004EE8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
/* 005AEC 80004EEC 44982000 */ mtc1 $t8, $f4
/* 005AF0 80004EF0 00000000 */ nop
/* 005AF4 80004EF4 46802420 */ cvt.s.w $f16, $f4
/* 005AF8 80004EF8 07010004 */ bgez $t8, .L80004F0C
/* 005AFC 80004EFC E44A005C */ swc1 $f10, 0x5c($v0)
/* 005B00 80004F00 44819000 */ mtc1 $at, $f18
/* 005B04 80004F04 00000000 */ nop
/* 005B08 80004F08 46128400 */ add.s $f16, $f16, $f18
.L80004F0C:
/* 005B0C 80004F0C 944F0022 */ lhu $t7, 0x22($v0)
/* 005B10 80004F10 E4500058 */ swc1 $f16, 0x58($v0)
/* 005B14 80004F14 448F4000 */ mtc1 $t7, $f8
/* 005B18 80004F18 05E10005 */ bgez $t7, .L80004F30
/* 005B1C 80004F1C 468041A0 */ cvt.s.w $f6, $f8
/* 005B20 80004F20 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
/* 005B24 80004F24 44815000 */ mtc1 $at, $f10
/* 005B28 80004F28 00000000 */ nop
/* 005B2C 80004F2C 460A3180 */ add.s $f6, $f6, $f10
.L80004F30:
/* 005B30 80004F30 00000000 */ nop
/* 005B34 80004F34 46023103 */ div.s $f4, $f6, $f2
/* 005B38 80004F38 10000055 */ b .L80005090
/* 005B3C 80004F3C E4440060 */ swc1 $f4, 0x60($v0)
.L80004F40:
/* 005B40 80004F40 C44000D4 */ lwc1 $f0, 0xd4($v0)
/* 005B44 80004F44 24030001 */ li $v1, 1
/* 005B48 80004F48 46020482 */ mul.s $f18, $f0, $f2
/* 005B4C 80004F4C 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000
/* 005B50 80004F50 E440005C */ swc1 $f0, 0x5c($v0)
/* 005B54 80004F54 4459F800 */ cfc1 $t9, $31
/* 005B58 80004F58 44C3F800 */ ctc1 $v1, $31
/* 005B5C 80004F5C 00000000 */ nop
/* 005B60 80004F60 46009424 */ cvt.w.s $f16, $f18
/* 005B64 80004F64 4443F800 */ cfc1 $v1, $31
/* 005B68 80004F68 00000000 */ nop
/* 005B6C 80004F6C 30630078 */ andi $v1, $v1, 0x78
/* 005B70 80004F70 10600012 */ beqz $v1, .L80004FBC
/* 005B74 80004F74 00000000 */ nop
/* 005B78 80004F78 44818000 */ mtc1 $at, $f16
/* 005B7C 80004F7C 24030001 */ li $v1, 1
/* 005B80 80004F80 46109401 */ sub.s $f16, $f18, $f16
/* 005B84 80004F84 3C018000 */ lui $at, 0x8000
/* 005B88 80004F88 44C3F800 */ ctc1 $v1, $31
/* 005B8C 80004F8C 00000000 */ nop
/* 005B90 80004F90 46008424 */ cvt.w.s $f16, $f16
/* 005B94 80004F94 4443F800 */ cfc1 $v1, $31
/* 005B98 80004F98 00000000 */ nop
/* 005B9C 80004F9C 30630078 */ andi $v1, $v1, 0x78
/* 005BA0 80004FA0 14600004 */ bnez $v1, .L80004FB4
/* 005BA4 80004FA4 00000000 */ nop
/* 005BA8 80004FA8 44038000 */ mfc1 $v1, $f16
/* 005BAC 80004FAC 10000007 */ b .L80004FCC
/* 005BB0 80004FB0 00611825 */ or $v1, $v1, $at
.L80004FB4:
/* 005BB4 80004FB4 10000005 */ b .L80004FCC
/* 005BB8 80004FB8 2403FFFF */ li $v1, -1
.L80004FBC:
/* 005BBC 80004FBC 44038000 */ mfc1 $v1, $f16
/* 005BC0 80004FC0 00000000 */ nop
/* 005BC4 80004FC4 0460FFFB */ bltz $v1, .L80004FB4
/* 005BC8 80004FC8 00000000 */ nop
.L80004FCC:
/* 005BCC 80004FCC 94580018 */ lhu $t8, 0x18($v0)
/* 005BD0 80004FD0 3065FFFF */ andi $a1, $v1, 0xffff
/* 005BD4 80004FD4 44D9F800 */ ctc1 $t9, $31
/* 005BD8 80004FD8 00B8082A */ slt $at, $a1, $t8
/* 005BDC 80004FDC 1420000C */ bnez $at, .L80005010
/* 005BE0 80004FE0 00002025 */ move $a0, $zero
.L80004FE4:
/* 005BE4 80004FE4 24840001 */ addiu $a0, $a0, 1
/* 005BE8 80004FE8 308FFFFF */ andi $t7, $a0, 0xffff
/* 005BEC 80004FEC 000FC840 */ sll $t9, $t7, 1
/* 005BF0 80004FF0 00597021 */ addu $t6, $v0, $t9
/* 005BF4 80004FF4 95D80018 */ lhu $t8, 0x18($t6)
/* 005BF8 80004FF8 01E02025 */ move $a0, $t7
/* 005BFC 80004FFC 00B8082A */ slt $at, $a1, $t8
/* 005C00 80005000 14200003 */ bnez $at, .L80005010
/* 005C04 80005004 29E10004 */ slti $at, $t7, 4
/* 005C08 80005008 1420FFF6 */ bnez $at, .L80004FE4
/* 005C0C 8000500C 00000000 */ nop
.L80005010:
/* 005C10 80005010 2484FFFF */ addiu $a0, $a0, -1
/* 005C14 80005014 3083FFFF */ andi $v1, $a0, 0xffff
/* 005C18 80005018 0003C840 */ sll $t9, $v1, 1
/* 005C1C 8000501C 00597021 */ addu $t6, $v0, $t9
/* 005C20 80005020 95C60018 */ lhu $a2, 0x18($t6)
/* 005C24 80005024 00037840 */ sll $t7, $v1, 1
/* 005C28 80005028 004FC821 */ addu $t9, $v0, $t7
/* 005C2C 8000502C 972E001A */ lhu $t6, 0x1a($t9)
/* 005C30 80005030 00A6C023 */ subu $t8, $a1, $a2
/* 005C34 80005034 44984000 */ mtc1 $t8, $f8
/* 005C38 80005038 01C6C023 */ subu $t8, $t6, $a2
/* 005C3C 8000503C 44983000 */ mtc1 $t8, $f6
/* 005C40 80005040 468042A0 */ cvt.s.w $f10, $f8
/* 005C44 80005044 0043C821 */ addu $t9, $v0, $v1
/* 005C48 80005048 00437821 */ addu $t7, $v0, $v1
/* 005C4C 8000504C 46803120 */ cvt.s.w $f4, $f6
/* 005C50 80005050 91E7002C */ lbu $a3, 0x2c($t7)
/* 005C54 80005054 932E002D */ lbu $t6, 0x2d($t9)
/* 005C58 80005058 46045003 */ div.s $f0, $f10, $f4
/* 005C5C 8000505C 01C7C023 */ subu $t8, $t6, $a3
/* 005C60 80005060 44989000 */ mtc1 $t8, $f18
/* 005C64 80005064 44873000 */ mtc1 $a3, $f6
/* 005C68 80005068 46809420 */ cvt.s.w $f16, $f18
/* 005C6C 8000506C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
/* 005C70 80005070 46008202 */ mul.s $f8, $f16, $f0
/* 005C74 80005074 04E10004 */ bgez $a3, .L80005088
/* 005C78 80005078 468032A0 */ cvt.s.w $f10, $f6
/* 005C7C 8000507C 44812000 */ mtc1 $at, $f4
/* 005C80 80005080 00000000 */ nop
/* 005C84 80005084 46045280 */ add.s $f10, $f10, $f4
.L80005088:
/* 005C88 80005088 460A4480 */ add.s $f18, $f8, $f10
/* 005C8C 8000508C E4520054 */ swc1 $f18, 0x54($v0)
.L80005090:
/* 005C90 80005090 8FA4003C */ lw $a0, 0x3c($sp)
/* 005C94 80005094 0C01C450 */ jal func_80071140
/* 005C98 80005098 00000000 */ nop
/* 005C9C 8000509C 0C01C450 */ jal func_80071140
/* 005CA0 800050A0 02A02025 */ move $a0, $s5
/* 005CA4 800050A4 8FBF0034 */ lw $ra, 0x34($sp)
/* 005CA8 800050A8 8FA20044 */ lw $v0, 0x44($sp)
/* 005CAC 800050AC 8FB00018 */ lw $s0, 0x18($sp)
/* 005CB0 800050B0 8FB1001C */ lw $s1, 0x1c($sp)
/* 005CB4 800050B4 8FB20020 */ lw $s2, 0x20($sp)
/* 005CB8 800050B8 8FB30024 */ lw $s3, 0x24($sp)
/* 005CBC 800050BC 8FB40028 */ lw $s4, 0x28($sp)
/* 005CC0 800050C0 8FB5002C */ lw $s5, 0x2c($sp)
/* 005CC4 800050C4 8FB60030 */ lw $s6, 0x30($sp)
/* 005CC8 800050C8 03E00008 */ jr $ra
/* 005CCC 800050CC 27BD0058 */ addiu $sp, $sp, 0x58
@@ -0,0 +1,106 @@
glabel func_800050D0
/* 005CD0 800050D0 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 005CD4 800050D4 3C0E800E */ lui $t6, %hi(D_800DC6D0) # $t6, 0x800e
/* 005CD8 800050D8 91CEC6D0 */ lbu $t6, %lo(D_800DC6D0)($t6)
/* 005CDC 800050DC AFB00018 */ sw $s0, 0x18($sp)
/* 005CE0 800050E0 00808025 */ move $s0, $a0
/* 005CE4 800050E4 AFBF001C */ sw $ra, 0x1c($sp)
/* 005CE8 800050E8 AFA50024 */ sw $a1, 0x24($sp)
/* 005CEC 800050EC 11C00055 */ beqz $t6, .L80005244
/* 005CF0 800050F0 AFA7002C */ sw $a3, 0x2c($sp)
/* 005CF4 800050F4 8C8F0064 */ lw $t7, 0x64($a0)
/* 005CF8 800050F8 3C028012 */ lui $v0, %hi(D_80119C3C) # $v0, 0x8012
/* 005CFC 800050FC 24429C3C */ addiu $v0, %lo(D_80119C3C) # addiu $v0, $v0, -0x63c4
/* 005D00 80005100 AC4F0000 */ sw $t7, ($v0)
/* 005D04 80005104 8DF90118 */ lw $t9, 0x118($t7)
/* 005D08 80005108 3C058012 */ lui $a1, %hi(D_80119C38) # $a1, 0x8012
/* 005D0C 8000510C 24A59C38 */ addiu $a1, %lo(D_80119C38) # addiu $a1, $a1, -0x63c8
/* 005D10 80005110 1320004C */ beqz $t9, .L80005244
/* 005D14 80005114 ACB90000 */ sw $t9, ($a1)
/* 005D18 80005118 0C0044E7 */ jal func_8001139C
/* 005D1C 8000511C AFA60028 */ sw $a2, 0x28($sp)
/* 005D20 80005120 3C058012 */ lui $a1, %hi(D_80119C38) # $a1, 0x8012
/* 005D24 80005124 8FA60028 */ lw $a2, 0x28($sp)
/* 005D28 80005128 10400014 */ beqz $v0, .L8000517C
/* 005D2C 8000512C 24A59C38 */ addiu $a1, %lo(D_80119C38) # addiu $a1, $a1, -0x63c8
/* 005D30 80005130 3C098012 */ lui $t1, %hi(D_80119C3C) # $t1, 0x8012
/* 005D34 80005134 8D299C3C */ lw $t1, %lo(D_80119C3C)($t1)
/* 005D38 80005138 2401FFFF */ li $at, -1
/* 005D3C 8000513C 85240000 */ lh $a0, ($t1)
/* 005D40 80005140 00000000 */ nop
/* 005D44 80005144 1081000D */ beq $a0, $at, .L8000517C
/* 005D48 80005148 00000000 */ nop
/* 005D4C 8000514C 0C01A94A */ jal func_8006A528
/* 005D50 80005150 00000000 */ nop
/* 005D54 80005154 3C0A8012 */ lui $t2, %hi(D_80119C3C) # $t2, 0x8012
/* 005D58 80005158 8D4A9C3C */ lw $t2, %lo(D_80119C3C)($t2)
/* 005D5C 8000515C 00000000 */ nop
/* 005D60 80005160 85440000 */ lh $a0, ($t2)
/* 005D64 80005164 0C01A955 */ jal func_8006A554
/* 005D68 80005168 AFA20028 */ sw $v0, 0x28($sp)
/* 005D6C 8000516C 3C058012 */ lui $a1, %hi(D_80119C38) # $a1, 0x8012
/* 005D70 80005170 8FA60028 */ lw $a2, 0x28($sp)
/* 005D74 80005174 24A59C38 */ addiu $a1, %lo(D_80119C38) # addiu $a1, $a1, -0x63c8
/* 005D78 80005178 AFA20024 */ sw $v0, 0x24($sp)
.L8000517C:
/* 005D7C 8000517C 8CA20000 */ lw $v0, ($a1)
/* 005D80 80005180 3C01C6FA */ li $at, 0xC6FA0000 # -32000.000000
/* 005D84 80005184 944B0000 */ lhu $t3, ($v0)
/* 005D88 80005188 00000000 */ nop
/* 005D8C 8000518C 1560000A */ bnez $t3, .L800051B8
/* 005D90 80005190 00000000 */ nop
/* 005D94 80005194 44810000 */ mtc1 $at, $f0
/* 005D98 80005198 00000000 */ nop
/* 005D9C 8000519C E4400078 */ swc1 $f0, 0x78($v0)
/* 005DA0 800051A0 8CAC0000 */ lw $t4, ($a1)
/* 005DA4 800051A4 00000000 */ nop
/* 005DA8 800051A8 E580007C */ swc1 $f0, 0x7c($t4)
/* 005DAC 800051AC 8CAD0000 */ lw $t5, ($a1)
/* 005DB0 800051B0 10000024 */ b .L80005244
/* 005DB4 800051B4 E5A00080 */ swc1 $f0, 0x80($t5)
.L800051B8:
/* 005DB8 800051B8 C604000C */ lwc1 $f4, 0xc($s0)
/* 005DBC 800051BC 3C188012 */ lui $t8, %hi(D_80119C3C) # $t8, 0x8012
/* 005DC0 800051C0 E4440078 */ swc1 $f4, 0x78($v0)
/* 005DC4 800051C4 8CAE0000 */ lw $t6, ($a1)
/* 005DC8 800051C8 C6060010 */ lwc1 $f6, 0x10($s0)
/* 005DCC 800051CC 24010001 */ li $at, 1
/* 005DD0 800051D0 E5C6007C */ swc1 $f6, 0x7c($t6)
/* 005DD4 800051D4 8CAF0000 */ lw $t7, ($a1)
/* 005DD8 800051D8 C6080014 */ lwc1 $f8, 0x14($s0)
/* 005DDC 800051DC 00000000 */ nop
/* 005DE0 800051E0 E5E80080 */ swc1 $f8, 0x80($t7)
/* 005DE4 800051E4 8F189C3C */ lw $t8, %lo(D_80119C3C)($t8)
/* 005DE8 800051E8 8FA7002C */ lw $a3, 0x2c($sp)
/* 005DEC 800051EC 830301D7 */ lb $v1, 0x1d7($t8)
/* 005DF0 800051F0 8FA50024 */ lw $a1, 0x24($sp)
/* 005DF4 800051F4 10610005 */ beq $v1, $at, .L8000520C
/* 005DF8 800051F8 24010002 */ li $at, 2
/* 005DFC 800051FC 10610008 */ beq $v1, $at, .L80005220
/* 005E00 80005200 8FA50024 */ lw $a1, 0x24($sp)
/* 005E04 80005204 1000000C */ b .L80005238
/* 005E08 80005208 8FA50024 */ lw $a1, 0x24($sp)
.L8000520C:
/* 005E0C 8000520C 0C001742 */ jal func_80005D08
/* 005E10 80005210 02002025 */ move $a0, $s0
/* 005E14 80005214 1000000C */ b .L80005248
/* 005E18 80005218 8FBF001C */ lw $ra, 0x1c($sp)
/* 005E1C 8000521C 8FA50024 */ lw $a1, 0x24($sp)
.L80005220:
/* 005E20 80005220 8FA7002C */ lw $a3, 0x2c($sp)
/* 005E24 80005224 0C0018FB */ jal func_800063EC
/* 005E28 80005228 02002025 */ move $a0, $s0
/* 005E2C 8000522C 10000006 */ b .L80005248
/* 005E30 80005230 8FBF001C */ lw $ra, 0x1c($sp)
/* 005E34 80005234 8FA50024 */ lw $a1, 0x24($sp)
.L80005238:
/* 005E38 80005238 8FA7002C */ lw $a3, 0x2c($sp)
/* 005E3C 8000523C 0C001495 */ jal func_80005254
/* 005E40 80005240 02002025 */ move $a0, $s0
.L80005244:
/* 005E44 80005244 8FBF001C */ lw $ra, 0x1c($sp)
.L80005248:
/* 005E48 80005248 8FB00018 */ lw $s0, 0x18($sp)
/* 005E4C 8000524C 03E00008 */ jr $ra
/* 005E50 80005250 27BD0020 */ addiu $sp, $sp, 0x20
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,477 @@
glabel func_80005D08
/* 006908 80005D08 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 00690C 80005D0C AFBF0014 */ sw $ra, 0x14($sp)
/* 006910 80005D10 AFA40038 */ sw $a0, 0x38($sp)
/* 006914 80005D14 AFA5003C */ sw $a1, 0x3c($sp)
/* 006918 80005D18 AFA60040 */ sw $a2, 0x40($sp)
/* 00691C 80005D1C 0C0044E7 */ jal func_8001139C
/* 006920 80005D20 AFA70044 */ sw $a3, 0x44($sp)
/* 006924 80005D24 8FA30038 */ lw $v1, 0x38($sp)
/* 006928 80005D28 1440000A */ bnez $v0, .L80005D54
/* 00692C 80005D2C 00000000 */ nop
/* 006930 80005D30 C460001C */ lwc1 $f0, 0x1c($v1)
/* 006934 80005D34 C4620024 */ lwc1 $f2, 0x24($v1)
/* 006938 80005D38 46000102 */ mul.s $f4, $f0, $f0
/* 00693C 80005D3C 00000000 */ nop
/* 006940 80005D40 46021182 */ mul.s $f6, $f2, $f2
/* 006944 80005D44 0C0326B4 */ jal sqrtf
/* 006948 80005D48 46062300 */ add.s $f12, $f4, $f6
/* 00694C 80005D4C 10000003 */ b .L80005D5C
/* 006950 80005D50 46000406 */ mov.s $f16, $f0
.L80005D54:
/* 006954 80005D54 44808000 */ mtc1 $zero, $f16
/* 006958 80005D58 00000000 */ nop
.L80005D5C:
/* 00695C 80005D5C 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012
/* 006960 80005D60 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8
/* 006964 80005D64 8D230000 */ lw $v1, ($t1)
/* 006968 80005D68 8FAE0040 */ lw $t6, 0x40($sp)
/* 00696C 80005D6C C46E00D4 */ lwc1 $f14, 0xd4($v1)
/* 006970 80005D70 31CF8000 */ andi $t7, $t6, 0x8000
/* 006974 80005D74 11E00019 */ beqz $t7, .L80005DDC
/* 006978 80005D78 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012
/* 00697C 80005D7C 8FB80044 */ lw $t8, 0x44($sp)
/* 006980 80005D80 C46800B0 */ lwc1 $f8, 0xb0($v1)
/* 006984 80005D84 44985000 */ mtc1 $t8, $f10
/* 006988 80005D88 00000000 */ nop
/* 00698C 80005D8C 46805120 */ cvt.s.w $f4, $f10
/* 006990 80005D90 C46A00A4 */ lwc1 $f10, 0xa4($v1)
/* 006994 80005D94 46044182 */ mul.s $f6, $f8, $f4
/* 006998 80005D98 46065200 */ add.s $f8, $f10, $f6
/* 00699C 80005D9C E46800A4 */ swc1 $f8, 0xa4($v1)
/* 0069A0 80005DA0 8D230000 */ lw $v1, ($t1)
/* 0069A4 80005DA4 00000000 */ nop
/* 0069A8 80005DA8 C46200C8 */ lwc1 $f2, 0xc8($v1)
/* 0069AC 80005DAC C46000A4 */ lwc1 $f0, 0xa4($v1)
/* 0069B0 80005DB0 00000000 */ nop
/* 0069B4 80005DB4 4600103C */ c.lt.s $f2, $f0
/* 0069B8 80005DB8 00000000 */ nop
/* 0069BC 80005DBC 45000014 */ bc1f .L80005E10
/* 0069C0 80005DC0 00000000 */ nop
/* 0069C4 80005DC4 E46200A4 */ swc1 $f2, 0xa4($v1)
/* 0069C8 80005DC8 8D230000 */ lw $v1, ($t1)
/* 0069CC 80005DCC 00000000 */ nop
/* 0069D0 80005DD0 C46000A4 */ lwc1 $f0, 0xa4($v1)
/* 0069D4 80005DD4 1000000F */ b .L80005E14
/* 0069D8 80005DD8 44801000 */ mtc1 $zero, $f2
.L80005DDC:
/* 0069DC 80005DDC 8FB90044 */ lw $t9, 0x44($sp)
/* 0069E0 80005DE0 C46400B4 */ lwc1 $f4, 0xb4($v1)
/* 0069E4 80005DE4 44995000 */ mtc1 $t9, $f10
/* 0069E8 80005DE8 00000000 */ nop
/* 0069EC 80005DEC 468051A0 */ cvt.s.w $f6, $f10
/* 0069F0 80005DF0 C46A00A4 */ lwc1 $f10, 0xa4($v1)
/* 0069F4 80005DF4 46062202 */ mul.s $f8, $f4, $f6
/* 0069F8 80005DF8 46085101 */ sub.s $f4, $f10, $f8
/* 0069FC 80005DFC E46400A4 */ swc1 $f4, 0xa4($v1)
/* 006A00 80005E00 8D230000 */ lw $v1, ($t1)
/* 006A04 80005E04 00000000 */ nop
/* 006A08 80005E08 C46000A4 */ lwc1 $f0, 0xa4($v1)
/* 006A0C 80005E0C 00000000 */ nop
.L80005E10:
/* 006A10 80005E10 44801000 */ mtc1 $zero, $f2
.L80005E14:
/* 006A14 80005E14 00000000 */ nop
/* 006A18 80005E18 4602003C */ c.lt.s $f0, $f2
/* 006A1C 80005E1C 00000000 */ nop
/* 006A20 80005E20 45000002 */ bc1f .L80005E2C
/* 006A24 80005E24 00000000 */ nop
/* 006A28 80005E28 E46200A4 */ swc1 $f2, 0xa4($v1)
.L80005E2C:
/* 006A2C 80005E2C 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0)
/* 006A30 80005E30 34018000 */ li $at, 32768
/* 006A34 80005E34 848A0196 */ lh $t2, 0x196($a0)
/* 006A38 80005E38 848C01A0 */ lh $t4, 0x1a0($a0)
/* 006A3C 80005E3C 000A5823 */ negu $t3, $t2
/* 006A40 80005E40 318DFFFF */ andi $t5, $t4, 0xffff
/* 006A44 80005E44 016D1023 */ subu $v0, $t3, $t5
/* 006A48 80005E48 00411021 */ addu $v0, $v0, $at
/* 006A4C 80005E4C 34018001 */ li $at, 32769
/* 006A50 80005E50 0041082A */ slt $at, $v0, $at
/* 006A54 80005E54 14200003 */ bnez $at, .L80005E64
/* 006A58 80005E58 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff
/* 006A5C 80005E5C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1
/* 006A60 80005E60 00411021 */ addu $v0, $v0, $at
.L80005E64:
/* 006A64 80005E64 28418000 */ slti $at, $v0, -0x8000
/* 006A68 80005E68 10200002 */ beqz $at, .L80005E74
/* 006A6C 80005E6C 3401FFFF */ li $at, 65535
/* 006A70 80005E70 00411021 */ addu $v0, $v0, $at
.L80005E74:
/* 006A74 80005E74 00022400 */ sll $a0, $v0, 0x10
/* 006A78 80005E78 00047403 */ sra $t6, $a0, 0x10
/* 006A7C 80005E7C 01C02025 */ move $a0, $t6
/* 006A80 80005E80 E7AE001C */ swc1 $f14, 0x1c($sp)
/* 006A84 80005E84 0C01C1F1 */ jal func_800707C4
/* 006A88 80005E88 E7B00030 */ swc1 $f16, 0x30($sp)
/* 006A8C 80005E8C 44803000 */ mtc1 $zero, $f6
/* 006A90 80005E90 C7AE001C */ lwc1 $f14, 0x1c($sp)
/* 006A94 80005E94 4606003C */ c.lt.s $f0, $f6
/* 006A98 80005E98 C7B00030 */ lwc1 $f16, 0x30($sp)
/* 006A9C 80005E9C 45000002 */ bc1f .L80005EA8
/* 006AA0 80005EA0 46000086 */ mov.s $f2, $f0
/* 006AA4 80005EA4 46000087 */ neg.s $f2, $f0
.L80005EA8:
/* 006AA8 80005EA8 E7A20024 */ swc1 $f2, 0x24($sp)
/* 006AAC 80005EAC E7AE001C */ swc1 $f14, 0x1c($sp)
/* 006AB0 80005EB0 0C019944 */ jal func_80066510
/* 006AB4 80005EB4 E7B00030 */ swc1 $f16, 0x30($sp)
/* 006AB8 80005EB8 C7A20024 */ lwc1 $f2, 0x24($sp)
/* 006ABC 80005EBC C7AE001C */ lwc1 $f14, 0x1c($sp)
/* 006AC0 80005EC0 C7B00030 */ lwc1 $f16, 0x30($sp)
/* 006AC4 80005EC4 14400017 */ bnez $v0, .L80005F24
/* 006AC8 80005EC8 00000000 */ nop
/* 006ACC 80005ECC E7A20024 */ swc1 $f2, 0x24($sp)
/* 006AD0 80005ED0 E7AE001C */ swc1 $f14, 0x1c($sp)
/* 006AD4 80005ED4 0C0044E7 */ jal func_8001139C
/* 006AD8 80005ED8 E7B00030 */ swc1 $f16, 0x30($sp)
/* 006ADC 80005EDC 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012
/* 006AE0 80005EE0 C7A20024 */ lwc1 $f2, 0x24($sp)
/* 006AE4 80005EE4 C7AE001C */ lwc1 $f14, 0x1c($sp)
/* 006AE8 80005EE8 C7B00030 */ lwc1 $f16, 0x30($sp)
/* 006AEC 80005EEC 1440000D */ bnez $v0, .L80005F24
/* 006AF0 80005EF0 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8
/* 006AF4 80005EF4 8D2F0000 */ lw $t7, ($t1)
/* 006AF8 80005EF8 3C01402E */ li $at, 0x402E0000 # 2.718750
/* 006AFC 80005EFC C5EA00BC */ lwc1 $f10, 0xbc($t7)
/* 006B00 80005F00 44815800 */ mtc1 $at, $f11
/* 006B04 80005F04 46025202 */ mul.s $f8, $f10, $f2
/* 006B08 80005F08 44805000 */ mtc1 $zero, $f10
/* 006B0C 80005F0C 46104102 */ mul.s $f4, $f8, $f16
/* 006B10 80005F10 460021A1 */ cvt.d.s $f6, $f4
/* 006B14 80005F14 00000000 */ nop
/* 006B18 80005F18 462A3203 */ div.d $f8, $f6, $f10
/* 006B1C 80005F1C 10000003 */ b .L80005F2C
/* 006B20 80005F20 462044A0 */ cvt.s.d $f18, $f8
.L80005F24:
/* 006B24 80005F24 44809000 */ mtc1 $zero, $f18
/* 006B28 80005F28 00000000 */ nop
.L80005F2C:
/* 006B2C 80005F2C E7AE001C */ swc1 $f14, 0x1c($sp)
/* 006B30 80005F30 E7B00030 */ swc1 $f16, 0x30($sp)
/* 006B34 80005F34 0C028064 */ jal func_800A0190
/* 006B38 80005F38 E7B20020 */ swc1 $f18, 0x20($sp)
/* 006B3C 80005F3C 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012
/* 006B40 80005F40 C7AE001C */ lwc1 $f14, 0x1c($sp)
/* 006B44 80005F44 C7B00030 */ lwc1 $f16, 0x30($sp)
/* 006B48 80005F48 C7B20020 */ lwc1 $f18, 0x20($sp)
/* 006B4C 80005F4C 14400005 */ bnez $v0, .L80005F64
/* 006B50 80005F50 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8
/* 006B54 80005F54 44802000 */ mtc1 $zero, $f4
/* 006B58 80005F58 8D380000 */ lw $t8, ($t1)
/* 006B5C 80005F5C 00000000 */ nop
/* 006B60 80005F60 E70400A4 */ swc1 $f4, 0xa4($t8)
.L80005F64:
/* 006B64 80005F64 3C014024 */ li $at, 0x40240000 # 2.562500
/* 006B68 80005F68 44811800 */ mtc1 $at, $f3
/* 006B6C 80005F6C 44801000 */ mtc1 $zero, $f2
/* 006B70 80005F70 46008021 */ cvt.d.s $f0, $f16
/* 006B74 80005F74 4620103C */ c.lt.d $f2, $f0
/* 006B78 80005F78 44805800 */ mtc1 $zero, $f11
/* 006B7C 80005F7C 45000004 */ bc1f .L80005F90
/* 006B80 80005F80 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012
/* 006B84 80005F84 46220181 */ sub.d $f6, $f0, $f2
/* 006B88 80005F88 10000003 */ b .L80005F98
/* 006B8C 80005F8C 46203420 */ cvt.s.d $f16, $f6
.L80005F90:
/* 006B90 80005F90 44808000 */ mtc1 $zero, $f16
/* 006B94 80005F94 00000000 */ nop
.L80005F98:
/* 006B98 80005F98 44805000 */ mtc1 $zero, $f10
/* 006B9C 80005F9C 46008221 */ cvt.d.s $f8, $f16
/* 006BA0 80005FA0 46285032 */ c.eq.d $f10, $f8
/* 006BA4 80005FA4 3C01800E */ lui $at, 0x800e
/* 006BA8 80005FA8 45010034 */ bc1t .L8000607C
/* 006BAC 80005FAC 00000000 */ nop
/* 006BB0 80005FB0 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0)
/* 006BB4 80005FB4 00000000 */ nop
/* 006BB8 80005FB8 80820185 */ lb $v0, 0x185($a0)
/* 006BBC 80005FBC 00000000 */ nop
/* 006BC0 80005FC0 1040002E */ beqz $v0, .L8000607C
/* 006BC4 80005FC4 00000000 */ nop
/* 006BC8 80005FC8 2841000B */ slti $at, $v0, 0xb
/* 006BCC 80005FCC 10200003 */ beqz $at, .L80005FDC
/* 006BD0 80005FD0 2405000A */ li $a1, 10
/* 006BD4 80005FD4 10000001 */ b .L80005FDC
/* 006BD8 80005FD8 00402825 */ move $a1, $v0
.L80005FDC:
/* 006BDC 80005FDC 44853000 */ mtc1 $a1, $f6
/* 006BE0 80005FE0 3C01800E */ lui $at, %hi(D_800E4C5C) # $at, 0x800e
/* 006BE4 80005FE4 468032A1 */ cvt.d.w $f10, $f6
/* 006BE8 80005FE8 C4254C50 */ lwc1 $f5, %lo(D_800E4C50)($at)
/* 006BEC 80005FEC C4244C54 */ lwc1 $f4, %lo(D_800E4C54)($at)
/* 006BF0 80005FF0 8D230000 */ lw $v1, ($t1)
/* 006BF4 80005FF4 462A2002 */ mul.d $f0, $f4, $f10
/* 006BF8 80005FF8 C46C003C */ lwc1 $f12, 0x3c($v1)
/* 006BFC 80005FFC 0005C980 */ sll $t9, $a1, 6
/* 006C00 80006000 460060A1 */ cvt.d.s $f2, $f12
/* 006C04 80006004 4620103C */ c.lt.d $f2, $f0
/* 006C08 80006008 00000000 */ nop
/* 006C0C 8000600C 4500000E */ bc1f .L80006048
/* 006C10 80006010 00000000 */ nop
/* 006C14 80006014 44994000 */ mtc1 $t9, $f8
/* 006C18 80006018 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012
/* 006C1C 8000601C 468041A1 */ cvt.d.w $f6, $f8
/* 006C20 80006020 00000000 */ nop
/* 006C24 80006024 46260103 */ div.d $f4, $f0, $f6
/* 006C28 80006028 46241280 */ add.d $f10, $f2, $f4
/* 006C2C 8000602C 46205220 */ cvt.s.d $f8, $f10
/* 006C30 80006030 E468003C */ swc1 $f8, 0x3c($v1)
/* 006C34 80006034 8D230000 */ lw $v1, ($t1)
/* 006C38 80006038 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0)
/* 006C3C 8000603C C46C003C */ lwc1 $f12, 0x3c($v1)
/* 006C40 80006040 1000001C */ b .L800060B4
/* 006C44 80006044 460C7380 */ add.s $f14, $f14, $f12
.L80006048:
/* 006C48 80006048 4622003C */ c.lt.d $f0, $f2
/* 006C4C 8000604C 00000000 */ nop
/* 006C50 80006050 45000008 */ bc1f .L80006074
/* 006C54 80006054 00000000 */ nop
/* 006C58 80006058 462001A0 */ cvt.s.d $f6, $f0
/* 006C5C 8000605C 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012
/* 006C60 80006060 E466003C */ swc1 $f6, 0x3c($v1)
/* 006C64 80006064 8D230000 */ lw $v1, ($t1)
/* 006C68 80006068 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0)
/* 006C6C 8000606C C46C003C */ lwc1 $f12, 0x3c($v1)
/* 006C70 80006070 00000000 */ nop
.L80006074:
/* 006C74 80006074 1000000F */ b .L800060B4
/* 006C78 80006078 460C7380 */ add.s $f14, $f14, $f12
.L8000607C:
/* 006C7C 8000607C 8D230000 */ lw $v1, ($t1)
/* 006C80 80006080 C4294C58 */ lwc1 $f9, %lo(D_800E4C58)($at)
/* 006C84 80006084 C464003C */ lwc1 $f4, 0x3c($v1)
/* 006C88 80006088 C4284C5C */ lwc1 $f8, %lo(D_800E4C5C)($at)
/* 006C8C 8000608C 460022A1 */ cvt.d.s $f10, $f4
/* 006C90 80006090 46285182 */ mul.d $f6, $f10, $f8
/* 006C94 80006094 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012
/* 006C98 80006098 46203120 */ cvt.s.d $f4, $f6
/* 006C9C 8000609C E464003C */ swc1 $f4, 0x3c($v1)
/* 006CA0 800060A0 8D230000 */ lw $v1, ($t1)
/* 006CA4 800060A4 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0)
/* 006CA8 800060A8 C46A003C */ lwc1 $f10, 0x3c($v1)
/* 006CAC 800060AC 00000000 */ nop
/* 006CB0 800060B0 460A7380 */ add.s $f14, $f14, $f10
.L800060B4:
/* 006CB4 800060B4 C46800CC */ lwc1 $f8, 0xcc($v1)
/* 006CB8 800060B8 C46A00A4 */ lwc1 $f10, 0xa4($v1)
/* 006CBC 800060BC 46088182 */ mul.s $f6, $f16, $f8
/* 006CC0 800060C0 848A0000 */ lh $t2, ($a0)
/* 006CC4 800060C4 2401FFFF */ li $at, -1
/* 006CC8 800060C8 46123100 */ add.s $f4, $f6, $f18
/* 006CCC 800060CC 460A2200 */ add.s $f8, $f4, $f10
/* 006CD0 800060D0 11410016 */ beq $t2, $at, .L8000612C
/* 006CD4 800060D4 46087380 */ add.s $f14, $f14, $f8
/* 006CD8 800060D8 808C01E2 */ lb $t4, 0x1e2($a0)
/* 006CDC 800060DC 00000000 */ nop
/* 006CE0 800060E0 15800012 */ bnez $t4, .L8000612C
/* 006CE4 800060E4 00000000 */ nop
/* 006CE8 800060E8 808B01E5 */ lb $t3, 0x1e5($a0)
/* 006CEC 800060EC 00000000 */ nop
/* 006CF0 800060F0 29610004 */ slti $at, $t3, 4
/* 006CF4 800060F4 1020000D */ beqz $at, .L8000612C
/* 006CF8 800060F8 00000000 */ nop
/* 006CFC 800060FC 0C0044E7 */ jal func_8001139C
/* 006D00 80006100 E7AE001C */ swc1 $f14, 0x1c($sp)
/* 006D04 80006104 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012
/* 006D08 80006108 C7AE001C */ lwc1 $f14, 0x1c($sp)
/* 006D0C 8000610C 14400007 */ bnez $v0, .L8000612C
/* 006D10 80006110 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8
/* 006D14 80006114 3C01800E */ lui $at, %hi(D_800E4C64) # $at, 0x800e
/* 006D18 80006118 C4254C60 */ lwc1 $f5, %lo(D_800E4C60)($at)
/* 006D1C 8000611C C4244C64 */ lwc1 $f4, %lo(D_800E4C64)($at)
/* 006D20 80006120 460071A1 */ cvt.d.s $f6, $f14
/* 006D24 80006124 46243280 */ add.d $f10, $f6, $f4
/* 006D28 80006128 462053A0 */ cvt.s.d $f14, $f10
.L8000612C:
/* 006D2C 8000612C 8D230000 */ lw $v1, ($t1)
/* 006D30 80006130 3C014100 */ li $at, 0x41000000 # 8.000000
/* 006D34 80006134 C460005C */ lwc1 $f0, 0x5c($v1)
/* 006D38 80006138 44811000 */ mtc1 $at, $f2
/* 006D3C 8000613C 46007201 */ sub.s $f8, $f14, $f0
/* 006D40 80006140 3C01800E */ lui $at, %hi(D_800E4C68) # $at, 0x800e
/* 006D44 80006144 46024183 */ div.s $f6, $f8, $f2
/* 006D48 80006148 46060100 */ add.s $f4, $f0, $f6
/* 006D4C 8000614C E464005C */ swc1 $f4, 0x5c($v1)
/* 006D50 80006150 8D230000 */ lw $v1, ($t1)
/* 006D54 80006154 C42A4C6C */ lwc1 $f10, %lo(D_800E4C6C)($at)
/* 006D58 80006158 C460005C */ lwc1 $f0, 0x5c($v1)
/* 006D5C 8000615C C42B4C68 */ lwc1 $f11, %lo(D_800E4C68)($at)
/* 006D60 80006160 46000221 */ cvt.d.s $f8, $f0
/* 006D64 80006164 4628503C */ c.lt.d $f10, $f8
/* 006D68 80006168 3C01800E */ lui $at, %hi(D_800E4C70) # $at, 0x800e
/* 006D6C 8000616C 45000008 */ bc1f .L80006190
/* 006D70 80006170 00000000 */ nop
/* 006D74 80006174 C4264C70 */ lwc1 $f6, %lo(D_800E4C70)($at)
/* 006D78 80006178 00000000 */ nop
/* 006D7C 8000617C E466005C */ swc1 $f6, 0x5c($v1)
/* 006D80 80006180 8D230000 */ lw $v1, ($t1)
/* 006D84 80006184 00000000 */ nop
/* 006D88 80006188 C460005C */ lwc1 $f0, 0x5c($v1)
/* 006D8C 8000618C 00000000 */ nop
.L80006190:
/* 006D90 80006190 3C01800E */ lui $at, %hi(D_800E4C74) # $at, 0x800e
/* 006D94 80006194 C4244C74 */ lwc1 $f4, %lo(D_800E4C74)($at)
/* 006D98 80006198 24050001 */ li $a1, 1
/* 006D9C 8000619C 46040282 */ mul.s $f10, $f0, $f4
/* 006DA0 800061A0 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000
/* 006DA4 800061A4 444DF800 */ cfc1 $t5, $31
/* 006DA8 800061A8 44C5F800 */ ctc1 $a1, $31
/* 006DAC 800061AC 00000000 */ nop
/* 006DB0 800061B0 46005224 */ cvt.w.s $f8, $f10
/* 006DB4 800061B4 4445F800 */ cfc1 $a1, $31
/* 006DB8 800061B8 00000000 */ nop
/* 006DBC 800061BC 30A50078 */ andi $a1, $a1, 0x78
/* 006DC0 800061C0 10A00012 */ beqz $a1, .L8000620C
/* 006DC4 800061C4 00000000 */ nop
/* 006DC8 800061C8 44814000 */ mtc1 $at, $f8
/* 006DCC 800061CC 24050001 */ li $a1, 1
/* 006DD0 800061D0 46085201 */ sub.s $f8, $f10, $f8
/* 006DD4 800061D4 3C018000 */ lui $at, 0x8000
/* 006DD8 800061D8 44C5F800 */ ctc1 $a1, $31
/* 006DDC 800061DC 00000000 */ nop
/* 006DE0 800061E0 46004224 */ cvt.w.s $f8, $f8
/* 006DE4 800061E4 4445F800 */ cfc1 $a1, $31
/* 006DE8 800061E8 00000000 */ nop
/* 006DEC 800061EC 30A50078 */ andi $a1, $a1, 0x78
/* 006DF0 800061F0 14A00004 */ bnez $a1, .L80006204
/* 006DF4 800061F4 00000000 */ nop
/* 006DF8 800061F8 44054000 */ mfc1 $a1, $f8
/* 006DFC 800061FC 10000007 */ b .L8000621C
/* 006E00 80006200 00A12825 */ or $a1, $a1, $at
.L80006204:
/* 006E04 80006204 10000005 */ b .L8000621C
/* 006E08 80006208 2405FFFF */ li $a1, -1
.L8000620C:
/* 006E0C 8000620C 44054000 */ mfc1 $a1, $f8
/* 006E10 80006210 00000000 */ nop
/* 006E14 80006214 04A0FFFB */ bltz $a1, .L80006204
/* 006E18 80006218 00000000 */ nop
.L8000621C:
/* 006E1C 8000621C 946F0018 */ lhu $t7, 0x18($v1)
/* 006E20 80006220 30A4FFFF */ andi $a0, $a1, 0xffff
/* 006E24 80006224 44CDF800 */ ctc1 $t5, $31
/* 006E28 80006228 008F082A */ slt $at, $a0, $t7
/* 006E2C 8000622C 1420000C */ bnez $at, .L80006260
/* 006E30 80006230 00001025 */ move $v0, $zero
.L80006234:
/* 006E34 80006234 24420001 */ addiu $v0, $v0, 1
/* 006E38 80006238 305800FF */ andi $t8, $v0, 0xff
/* 006E3C 8000623C 0018C840 */ sll $t9, $t8, 1
/* 006E40 80006240 00795021 */ addu $t2, $v1, $t9
/* 006E44 80006244 954C0018 */ lhu $t4, 0x18($t2)
/* 006E48 80006248 03001025 */ move $v0, $t8
/* 006E4C 8000624C 008C082A */ slt $at, $a0, $t4
/* 006E50 80006250 14200003 */ bnez $at, .L80006260
/* 006E54 80006254 2B010004 */ slti $at, $t8, 4
/* 006E58 80006258 1420FFF6 */ bnez $at, .L80006234
/* 006E5C 8000625C 00000000 */ nop
.L80006260:
/* 006E60 80006260 24010004 */ li $at, 4
/* 006E64 80006264 14410005 */ bne $v0, $at, .L8000627C
/* 006E68 80006268 00402825 */ move $a1, $v0
/* 006E6C 8000626C 00625821 */ addu $t3, $v1, $v0
/* 006E70 80006270 9168002C */ lbu $t0, 0x2c($t3)
/* 006E74 80006274 10000045 */ b .L8000638C
/* 006E78 80006278 44882000 */ mtc1 $t0, $f4
.L8000627C:
/* 006E7C 8000627C 10A00004 */ beqz $a1, .L80006290
/* 006E80 80006280 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
/* 006E84 80006284 2442FFFF */ addiu $v0, $v0, -1
/* 006E88 80006288 304500FF */ andi $a1, $v0, 0xff
/* 006E8C 8000628C 00A01025 */ move $v0, $a1
.L80006290:
/* 006E90 80006290 00027040 */ sll $t6, $v0, 1
/* 006E94 80006294 006E7821 */ addu $t7, $v1, $t6
/* 006E98 80006298 0005C840 */ sll $t9, $a1, 1
/* 006E9C 8000629C 95E60018 */ lhu $a2, 0x18($t7)
/* 006EA0 800062A0 00795021 */ addu $t2, $v1, $t9
/* 006EA4 800062A4 954C001A */ lhu $t4, 0x1a($t2)
/* 006EA8 800062A8 0086C023 */ subu $t8, $a0, $a2
/* 006EAC 800062AC 01865823 */ subu $t3, $t4, $a2
/* 006EB0 800062B0 448B5000 */ mtc1 $t3, $f10
/* 006EB4 800062B4 44983000 */ mtc1 $t8, $f6
/* 006EB8 800062B8 46805220 */ cvt.s.w $f8, $f10
/* 006EBC 800062BC 00657021 */ addu $t6, $v1, $a1
/* 006EC0 800062C0 00626821 */ addu $t5, $v1, $v0
/* 006EC4 800062C4 46803120 */ cvt.s.w $f4, $f6
/* 006EC8 800062C8 91A7002C */ lbu $a3, 0x2c($t5)
/* 006ECC 800062CC 91CF002D */ lbu $t7, 0x2d($t6)
/* 006ED0 800062D0 46082003 */ div.s $f0, $f4, $f8
/* 006ED4 800062D4 01E7C023 */ subu $t8, $t7, $a3
/* 006ED8 800062D8 44983000 */ mtc1 $t8, $f6
/* 006EDC 800062DC 44874000 */ mtc1 $a3, $f8
/* 006EE0 800062E0 468032A0 */ cvt.s.w $f10, $f6
/* 006EE4 800062E4 46005102 */ mul.s $f4, $f10, $f0
/* 006EE8 800062E8 04E10004 */ bgez $a3, .L800062FC
/* 006EEC 800062EC 468041A0 */ cvt.s.w $f6, $f8
/* 006EF0 800062F0 44815000 */ mtc1 $at, $f10
/* 006EF4 800062F4 00000000 */ nop
/* 006EF8 800062F8 460A3180 */ add.s $f6, $f6, $f10
.L800062FC:
/* 006EFC 800062FC 46062200 */ add.s $f8, $f4, $f6
/* 006F00 80006300 24080001 */ li $t0, 1
/* 006F04 80006304 4459F800 */ cfc1 $t9, $31
/* 006F08 80006308 44C8F800 */ ctc1 $t0, $31
/* 006F0C 8000630C 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000
/* 006F10 80006310 460042A4 */ cvt.w.s $f10, $f8
/* 006F14 80006314 4448F800 */ cfc1 $t0, $31
/* 006F18 80006318 00000000 */ nop
/* 006F1C 8000631C 31080078 */ andi $t0, $t0, 0x78
/* 006F20 80006320 11000012 */ beqz $t0, .L8000636C
/* 006F24 80006324 00000000 */ nop
/* 006F28 80006328 44815000 */ mtc1 $at, $f10
/* 006F2C 8000632C 24080001 */ li $t0, 1
/* 006F30 80006330 460A4281 */ sub.s $f10, $f8, $f10
/* 006F34 80006334 3C018000 */ lui $at, 0x8000
/* 006F38 80006338 44C8F800 */ ctc1 $t0, $31
/* 006F3C 8000633C 00000000 */ nop
/* 006F40 80006340 460052A4 */ cvt.w.s $f10, $f10
/* 006F44 80006344 4448F800 */ cfc1 $t0, $31
/* 006F48 80006348 00000000 */ nop
/* 006F4C 8000634C 31080078 */ andi $t0, $t0, 0x78
/* 006F50 80006350 15000004 */ bnez $t0, .L80006364
/* 006F54 80006354 00000000 */ nop
/* 006F58 80006358 44085000 */ mfc1 $t0, $f10
/* 006F5C 8000635C 10000007 */ b .L8000637C
/* 006F60 80006360 01014025 */ or $t0, $t0, $at
.L80006364:
/* 006F64 80006364 10000005 */ b .L8000637C
/* 006F68 80006368 2408FFFF */ li $t0, -1
.L8000636C:
/* 006F6C 8000636C 44085000 */ mfc1 $t0, $f10
/* 006F70 80006370 00000000 */ nop
/* 006F74 80006374 0500FFFB */ bltz $t0, .L80006364
/* 006F78 80006378 00000000 */ nop
.L8000637C:
/* 006F7C 8000637C 44D9F800 */ ctc1 $t9, $31
/* 006F80 80006380 310A00FF */ andi $t2, $t0, 0xff
/* 006F84 80006384 01404025 */ move $t0, $t2
/* 006F88 80006388 44882000 */ mtc1 $t0, $f4
.L8000638C:
/* 006F8C 8000638C C4600054 */ lwc1 $f0, 0x54($v1)
/* 006F90 80006390 05010005 */ bgez $t0, .L800063A8
/* 006F94 80006394 468021A0 */ cvt.s.w $f6, $f4
/* 006F98 80006398 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
/* 006F9C 8000639C 44814000 */ mtc1 $at, $f8
/* 006FA0 800063A0 00000000 */ nop
/* 006FA4 800063A4 46083180 */ add.s $f6, $f6, $f8
.L800063A8:
/* 006FA8 800063A8 46003281 */ sub.s $f10, $f6, $f0
/* 006FAC 800063AC 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 006FB0 800063B0 46025103 */ div.s $f4, $f10, $f2
/* 006FB4 800063B4 44813000 */ mtc1 $at, $f6
/* 006FB8 800063B8 44805000 */ mtc1 $zero, $f10
/* 006FBC 800063BC 46040200 */ add.s $f8, $f0, $f4
/* 006FC0 800063C0 E4680054 */ swc1 $f8, 0x54($v1)
/* 006FC4 800063C4 8D2C0000 */ lw $t4, ($t1)
/* 006FC8 800063C8 00000000 */ nop
/* 006FCC 800063CC E5860060 */ swc1 $f6, 0x60($t4)
/* 006FD0 800063D0 8D2B0000 */ lw $t3, ($t1)
/* 006FD4 800063D4 00000000 */ nop
/* 006FD8 800063D8 E56A0058 */ swc1 $f10, 0x58($t3)
/* 006FDC 800063DC 8FBF0014 */ lw $ra, 0x14($sp)
/* 006FE0 800063E0 27BD0038 */ addiu $sp, $sp, 0x38
/* 006FE4 800063E4 03E00008 */ jr $ra
/* 006FE8 800063E8 00000000 */ nop
@@ -0,0 +1,475 @@
glabel func_800063EC
/* 006FEC 800063EC 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 006FF0 800063F0 AFBF0014 */ sw $ra, 0x14($sp)
/* 006FF4 800063F4 AFA40030 */ sw $a0, 0x30($sp)
/* 006FF8 800063F8 AFA50034 */ sw $a1, 0x34($sp)
/* 006FFC 800063FC AFA60038 */ sw $a2, 0x38($sp)
/* 007000 80006400 0C0044E7 */ jal func_8001139C
/* 007004 80006404 AFA7003C */ sw $a3, 0x3c($sp)
/* 007008 80006408 1440000F */ bnez $v0, .L80006448
/* 00700C 8000640C 00000000 */ nop
/* 007010 80006410 8FA20030 */ lw $v0, 0x30($sp)
/* 007014 80006414 00000000 */ nop
/* 007018 80006418 C440001C */ lwc1 $f0, 0x1c($v0)
/* 00701C 8000641C C4420024 */ lwc1 $f2, 0x24($v0)
/* 007020 80006420 46000102 */ mul.s $f4, $f0, $f0
/* 007024 80006424 C44E0020 */ lwc1 $f14, 0x20($v0)
/* 007028 80006428 46021182 */ mul.s $f6, $f2, $f2
/* 00702C 8000642C 00000000 */ nop
/* 007030 80006430 460E7282 */ mul.s $f10, $f14, $f14
/* 007034 80006434 46062200 */ add.s $f8, $f4, $f6
/* 007038 80006438 0C0326B4 */ jal sqrtf
/* 00703C 8000643C 460A4300 */ add.s $f12, $f8, $f10
/* 007040 80006440 10000003 */ b .L80006450
/* 007044 80006444 46000486 */ mov.s $f18, $f0
.L80006448:
/* 007048 80006448 44809000 */ mtc1 $zero, $f18
/* 00704C 8000644C 00000000 */ nop
.L80006450:
/* 007050 80006450 3C014000 */ li $at, 0x40000000 # 2.000000
/* 007054 80006454 44812000 */ mtc1 $at, $f4
/* 007058 80006458 00000000 */ nop
/* 00705C 8000645C 4604903C */ c.lt.s $f18, $f4
/* 007060 80006460 00000000 */ nop
/* 007064 80006464 45000014 */ bc1f .L800064B8
/* 007068 80006468 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012
/* 00706C 8000646C 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8
/* 007070 80006470 8D230000 */ lw $v1, ($t1)
/* 007074 80006474 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
/* 007078 80006478 906E0037 */ lbu $t6, 0x37($v1)
/* 00707C 8000647C C4600054 */ lwc1 $f0, 0x54($v1)
/* 007080 80006480 448E3000 */ mtc1 $t6, $f6
/* 007084 80006484 05C10004 */ bgez $t6, .L80006498
/* 007088 80006488 46803220 */ cvt.s.w $f8, $f6
/* 00708C 8000648C 44815000 */ mtc1 $at, $f10
/* 007090 80006490 00000000 */ nop
/* 007094 80006494 460A4200 */ add.s $f8, $f8, $f10
.L80006498:
/* 007098 80006498 3C014100 */ li $at, 0x41000000 # 8.000000
/* 00709C 8000649C 44813000 */ mtc1 $at, $f6
/* 0070A0 800064A0 46004101 */ sub.s $f4, $f8, $f0
/* 0070A4 800064A4 00000000 */ nop
/* 0070A8 800064A8 46062283 */ div.s $f10, $f4, $f6
/* 0070AC 800064AC 460A0200 */ add.s $f8, $f0, $f10
/* 0070B0 800064B0 10000092 */ b .L800066FC
/* 0070B4 800064B4 E4680054 */ swc1 $f8, 0x54($v1)
.L800064B8:
/* 0070B8 800064B8 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012
/* 0070BC 800064BC 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8
/* 0070C0 800064C0 8D230000 */ lw $v1, ($t1)
/* 0070C4 800064C4 3C01800E */ lui $at, %hi(D_800E4C78) # $at, 0x800e
/* 0070C8 800064C8 C4264C78 */ lwc1 $f6, %lo(D_800E4C78)($at)
/* 0070CC 800064CC C464005C */ lwc1 $f4, 0x5c($v1)
/* 0070D0 800064D0 24050001 */ li $a1, 1
/* 0070D4 800064D4 46062282 */ mul.s $f10, $f4, $f6
/* 0070D8 800064D8 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000
/* 0070DC 800064DC 444FF800 */ cfc1 $t7, $31
/* 0070E0 800064E0 44C5F800 */ ctc1 $a1, $31
/* 0070E4 800064E4 00000000 */ nop
/* 0070E8 800064E8 46005224 */ cvt.w.s $f8, $f10
/* 0070EC 800064EC 4445F800 */ cfc1 $a1, $31
/* 0070F0 800064F0 00000000 */ nop
/* 0070F4 800064F4 30A50078 */ andi $a1, $a1, 0x78
/* 0070F8 800064F8 10A00012 */ beqz $a1, .L80006544
/* 0070FC 800064FC 00000000 */ nop
/* 007100 80006500 44814000 */ mtc1 $at, $f8
/* 007104 80006504 24050001 */ li $a1, 1
/* 007108 80006508 46085201 */ sub.s $f8, $f10, $f8
/* 00710C 8000650C 3C018000 */ lui $at, 0x8000
/* 007110 80006510 44C5F800 */ ctc1 $a1, $31
/* 007114 80006514 00000000 */ nop
/* 007118 80006518 46004224 */ cvt.w.s $f8, $f8
/* 00711C 8000651C 4445F800 */ cfc1 $a1, $31
/* 007120 80006520 00000000 */ nop
/* 007124 80006524 30A50078 */ andi $a1, $a1, 0x78
/* 007128 80006528 14A00004 */ bnez $a1, .L8000653C
/* 00712C 8000652C 00000000 */ nop
/* 007130 80006530 44054000 */ mfc1 $a1, $f8
/* 007134 80006534 10000007 */ b .L80006554
/* 007138 80006538 00A12825 */ or $a1, $a1, $at
.L8000653C:
/* 00713C 8000653C 10000005 */ b .L80006554
/* 007140 80006540 2405FFFF */ li $a1, -1
.L80006544:
/* 007144 80006544 44054000 */ mfc1 $a1, $f8
/* 007148 80006548 00000000 */ nop
/* 00714C 8000654C 04A0FFFB */ bltz $a1, .L8000653C
/* 007150 80006550 00000000 */ nop
.L80006554:
/* 007154 80006554 94790018 */ lhu $t9, 0x18($v1)
/* 007158 80006558 30A4FFFF */ andi $a0, $a1, 0xffff
/* 00715C 8000655C 44CFF800 */ ctc1 $t7, $31
/* 007160 80006560 0099082A */ slt $at, $a0, $t9
/* 007164 80006564 1420000C */ bnez $at, .L80006598
/* 007168 80006568 00001025 */ move $v0, $zero
.L8000656C:
/* 00716C 8000656C 24420001 */ addiu $v0, $v0, 1
/* 007170 80006570 304A00FF */ andi $t2, $v0, 0xff
/* 007174 80006574 000A5840 */ sll $t3, $t2, 1
/* 007178 80006578 006B6021 */ addu $t4, $v1, $t3
/* 00717C 8000657C 958D0018 */ lhu $t5, 0x18($t4)
/* 007180 80006580 01401025 */ move $v0, $t2
/* 007184 80006584 008D082A */ slt $at, $a0, $t5
/* 007188 80006588 14200003 */ bnez $at, .L80006598
/* 00718C 8000658C 29410004 */ slti $at, $t2, 4
/* 007190 80006590 1420FFF6 */ bnez $at, .L8000656C
/* 007194 80006594 00000000 */ nop
.L80006598:
/* 007198 80006598 24010004 */ li $at, 4
/* 00719C 8000659C 14410005 */ bne $v0, $at, .L800065B4
/* 0071A0 800065A0 00402825 */ move $a1, $v0
/* 0071A4 800065A4 00627021 */ addu $t6, $v1, $v0
/* 0071A8 800065A8 91C8002C */ lbu $t0, 0x2c($t6)
/* 0071AC 800065AC 10000045 */ b .L800066C4
/* 0071B0 800065B0 44883000 */ mtc1 $t0, $f6
.L800065B4:
/* 0071B4 800065B4 10A00004 */ beqz $a1, .L800065C8
/* 0071B8 800065B8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
/* 0071BC 800065BC 2442FFFF */ addiu $v0, $v0, -1
/* 0071C0 800065C0 304500FF */ andi $a1, $v0, 0xff
/* 0071C4 800065C4 00A01025 */ move $v0, $a1
.L800065C8:
/* 0071C8 800065C8 0002C040 */ sll $t8, $v0, 1
/* 0071CC 800065CC 0078C821 */ addu $t9, $v1, $t8
/* 0071D0 800065D0 00055840 */ sll $t3, $a1, 1
/* 0071D4 800065D4 97260018 */ lhu $a2, 0x18($t9)
/* 0071D8 800065D8 006B6021 */ addu $t4, $v1, $t3
/* 0071DC 800065DC 958D001A */ lhu $t5, 0x1a($t4)
/* 0071E0 800065E0 00865023 */ subu $t2, $a0, $a2
/* 0071E4 800065E4 01A67023 */ subu $t6, $t5, $a2
/* 0071E8 800065E8 448E5000 */ mtc1 $t6, $f10
/* 0071EC 800065EC 448A2000 */ mtc1 $t2, $f4
/* 0071F0 800065F0 46805220 */ cvt.s.w $f8, $f10
/* 0071F4 800065F4 0065C021 */ addu $t8, $v1, $a1
/* 0071F8 800065F8 00627821 */ addu $t7, $v1, $v0
/* 0071FC 800065FC 468021A0 */ cvt.s.w $f6, $f4
/* 007200 80006600 91E7002C */ lbu $a3, 0x2c($t7)
/* 007204 80006604 9319002D */ lbu $t9, 0x2d($t8)
/* 007208 80006608 46083003 */ div.s $f0, $f6, $f8
/* 00720C 8000660C 03275023 */ subu $t2, $t9, $a3
/* 007210 80006610 448A2000 */ mtc1 $t2, $f4
/* 007214 80006614 44874000 */ mtc1 $a3, $f8
/* 007218 80006618 468022A0 */ cvt.s.w $f10, $f4
/* 00721C 8000661C 46005182 */ mul.s $f6, $f10, $f0
/* 007220 80006620 04E10004 */ bgez $a3, .L80006634
/* 007224 80006624 46804120 */ cvt.s.w $f4, $f8
/* 007228 80006628 44815000 */ mtc1 $at, $f10
/* 00722C 8000662C 00000000 */ nop
/* 007230 80006630 460A2100 */ add.s $f4, $f4, $f10
.L80006634:
/* 007234 80006634 46043200 */ add.s $f8, $f6, $f4
/* 007238 80006638 24080001 */ li $t0, 1
/* 00723C 8000663C 444BF800 */ cfc1 $t3, $31
/* 007240 80006640 44C8F800 */ ctc1 $t0, $31
/* 007244 80006644 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000
/* 007248 80006648 460042A4 */ cvt.w.s $f10, $f8
/* 00724C 8000664C 4448F800 */ cfc1 $t0, $31
/* 007250 80006650 00000000 */ nop
/* 007254 80006654 31080078 */ andi $t0, $t0, 0x78
/* 007258 80006658 11000012 */ beqz $t0, .L800066A4
/* 00725C 8000665C 00000000 */ nop
/* 007260 80006660 44815000 */ mtc1 $at, $f10
/* 007264 80006664 24080001 */ li $t0, 1
/* 007268 80006668 460A4281 */ sub.s $f10, $f8, $f10
/* 00726C 8000666C 3C018000 */ lui $at, 0x8000
/* 007270 80006670 44C8F800 */ ctc1 $t0, $31
/* 007274 80006674 00000000 */ nop
/* 007278 80006678 460052A4 */ cvt.w.s $f10, $f10
/* 00727C 8000667C 4448F800 */ cfc1 $t0, $31
/* 007280 80006680 00000000 */ nop
/* 007284 80006684 31080078 */ andi $t0, $t0, 0x78
/* 007288 80006688 15000004 */ bnez $t0, .L8000669C
/* 00728C 8000668C 00000000 */ nop
/* 007290 80006690 44085000 */ mfc1 $t0, $f10
/* 007294 80006694 10000007 */ b .L800066B4
/* 007298 80006698 01014025 */ or $t0, $t0, $at
.L8000669C:
/* 00729C 8000669C 10000005 */ b .L800066B4
/* 0072A0 800066A0 2408FFFF */ li $t0, -1
.L800066A4:
/* 0072A4 800066A4 44085000 */ mfc1 $t0, $f10
/* 0072A8 800066A8 00000000 */ nop
/* 0072AC 800066AC 0500FFFB */ bltz $t0, .L8000669C
/* 0072B0 800066B0 00000000 */ nop
.L800066B4:
/* 0072B4 800066B4 44CBF800 */ ctc1 $t3, $31
/* 0072B8 800066B8 310C00FF */ andi $t4, $t0, 0xff
/* 0072BC 800066BC 01804025 */ move $t0, $t4
/* 0072C0 800066C0 44883000 */ mtc1 $t0, $f6
.L800066C4:
/* 0072C4 800066C4 C4600054 */ lwc1 $f0, 0x54($v1)
/* 0072C8 800066C8 05010005 */ bgez $t0, .L800066E0
/* 0072CC 800066CC 46803120 */ cvt.s.w $f4, $f6
/* 0072D0 800066D0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
/* 0072D4 800066D4 44814000 */ mtc1 $at, $f8
/* 0072D8 800066D8 00000000 */ nop
/* 0072DC 800066DC 46082100 */ add.s $f4, $f4, $f8
.L800066E0:
/* 0072E0 800066E0 3C014100 */ li $at, 0x41000000 # 8.000000
/* 0072E4 800066E4 44813000 */ mtc1 $at, $f6
/* 0072E8 800066E8 46002281 */ sub.s $f10, $f4, $f0
/* 0072EC 800066EC 00000000 */ nop
/* 0072F0 800066F0 46065203 */ div.s $f8, $f10, $f6
/* 0072F4 800066F4 46080100 */ add.s $f4, $f0, $f8
/* 0072F8 800066F8 E4640054 */ swc1 $f4, 0x54($v1)
.L800066FC:
/* 0072FC 800066FC 8D230000 */ lw $v1, ($t1)
/* 007300 80006700 8FAD0038 */ lw $t5, 0x38($sp)
/* 007304 80006704 C46E00D4 */ lwc1 $f14, 0xd4($v1)
/* 007308 80006708 31AE8000 */ andi $t6, $t5, 0x8000
/* 00730C 8000670C 11C0001A */ beqz $t6, .L80006778
/* 007310 80006710 8FB8003C */ lw $t8, 0x3c($sp)
/* 007314 80006714 8FAF003C */ lw $t7, 0x3c($sp)
/* 007318 80006718 C46A00B0 */ lwc1 $f10, 0xb0($v1)
/* 00731C 8000671C 448F3000 */ mtc1 $t7, $f6
/* 007320 80006720 00000000 */ nop
/* 007324 80006724 46803220 */ cvt.s.w $f8, $f6
/* 007328 80006728 C46600A4 */ lwc1 $f6, 0xa4($v1)
/* 00732C 8000672C 46085102 */ mul.s $f4, $f10, $f8
/* 007330 80006730 46043280 */ add.s $f10, $f6, $f4
/* 007334 80006734 E46A00A4 */ swc1 $f10, 0xa4($v1)
/* 007338 80006738 8D230000 */ lw $v1, ($t1)
/* 00733C 8000673C 00000000 */ nop
/* 007340 80006740 C46200C8 */ lwc1 $f2, 0xc8($v1)
/* 007344 80006744 C46000A4 */ lwc1 $f0, 0xa4($v1)
/* 007348 80006748 00000000 */ nop
/* 00734C 8000674C 4600103C */ c.lt.s $f2, $f0
/* 007350 80006750 00000000 */ nop
/* 007354 80006754 45000014 */ bc1f .L800067A8
/* 007358 80006758 00000000 */ nop
/* 00735C 8000675C E46200A4 */ swc1 $f2, 0xa4($v1)
/* 007360 80006760 8D230000 */ lw $v1, ($t1)
/* 007364 80006764 00000000 */ nop
/* 007368 80006768 C46000A4 */ lwc1 $f0, 0xa4($v1)
/* 00736C 8000676C 1000000F */ b .L800067AC
/* 007370 80006770 44801000 */ mtc1 $zero, $f2
/* 007374 80006774 8FB8003C */ lw $t8, 0x3c($sp)
.L80006778:
/* 007378 80006778 C46800B4 */ lwc1 $f8, 0xb4($v1)
/* 00737C 8000677C 44983000 */ mtc1 $t8, $f6
/* 007380 80006780 00000000 */ nop
/* 007384 80006784 46803120 */ cvt.s.w $f4, $f6
/* 007388 80006788 C46600A4 */ lwc1 $f6, 0xa4($v1)
/* 00738C 8000678C 46044282 */ mul.s $f10, $f8, $f4
/* 007390 80006790 460A3201 */ sub.s $f8, $f6, $f10
/* 007394 80006794 E46800A4 */ swc1 $f8, 0xa4($v1)
/* 007398 80006798 8D230000 */ lw $v1, ($t1)
/* 00739C 8000679C 00000000 */ nop
/* 0073A0 800067A0 C46000A4 */ lwc1 $f0, 0xa4($v1)
/* 0073A4 800067A4 00000000 */ nop
.L800067A8:
/* 0073A8 800067A8 44801000 */ mtc1 $zero, $f2
.L800067AC:
/* 0073AC 800067AC 00000000 */ nop
/* 0073B0 800067B0 4602003C */ c.lt.s $f0, $f2
/* 0073B4 800067B4 00000000 */ nop
/* 0073B8 800067B8 45000002 */ bc1f .L800067C4
/* 0073BC 800067BC 00000000 */ nop
/* 0073C0 800067C0 E46200A4 */ swc1 $f2, 0xa4($v1)
.L800067C4:
/* 0073C4 800067C4 E7AE0018 */ swc1 $f14, 0x18($sp)
/* 0073C8 800067C8 0C028064 */ jal func_800A0190
/* 0073CC 800067CC E7B2002C */ swc1 $f18, 0x2c($sp)
/* 0073D0 800067D0 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012
/* 0073D4 800067D4 C7AE0018 */ lwc1 $f14, 0x18($sp)
/* 0073D8 800067D8 C7B2002C */ lwc1 $f18, 0x2c($sp)
/* 0073DC 800067DC 14400005 */ bnez $v0, .L800067F4
/* 0073E0 800067E0 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8
/* 0073E4 800067E4 44802000 */ mtc1 $zero, $f4
/* 0073E8 800067E8 8D390000 */ lw $t9, ($t1)
/* 0073EC 800067EC 00000000 */ nop
/* 0073F0 800067F0 E72400A4 */ swc1 $f4, 0xa4($t9)
.L800067F4:
/* 0073F4 800067F4 8D2A0000 */ lw $t2, ($t1)
/* 0073F8 800067F8 8FAB0030 */ lw $t3, 0x30($sp)
/* 0073FC 800067FC C54600A4 */ lwc1 $f6, 0xa4($t2)
/* 007400 80006800 85640002 */ lh $a0, 2($t3)
/* 007404 80006804 46067380 */ add.s $f14, $f14, $f6
/* 007408 80006808 E7B2002C */ swc1 $f18, 0x2c($sp)
/* 00740C 8000680C 0C01C1F1 */ jal func_800707C4
/* 007410 80006810 E7AE0018 */ swc1 $f14, 0x18($sp)
/* 007414 80006814 8FAC0030 */ lw $t4, 0x30($sp)
/* 007418 80006818 E7A00028 */ swc1 $f0, 0x28($sp)
/* 00741C 8000681C 85840004 */ lh $a0, 4($t4)
/* 007420 80006820 0C01C1F1 */ jal func_800707C4
/* 007424 80006824 00000000 */ nop
/* 007428 80006828 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012
/* 00742C 8000682C 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8
/* 007430 80006830 8D230000 */ lw $v1, ($t1)
/* 007434 80006834 C7A80028 */ lwc1 $f8, 0x28($sp)
/* 007438 80006838 C46A00C4 */ lwc1 $f10, 0xc4($v1)
/* 00743C 8000683C C46400C0 */ lwc1 $f4, 0xc0($v1)
/* 007440 80006840 46085302 */ mul.s $f12, $f10, $f8
/* 007444 80006844 44803000 */ mtc1 $zero, $f6
/* 007448 80006848 C7B2002C */ lwc1 $f18, 0x2c($sp)
/* 00744C 8000684C 3C014024 */ li $at, 0x40240000 # 2.562500
/* 007450 80006850 46002082 */ mul.s $f2, $f4, $f0
/* 007454 80006854 C7AE0018 */ lwc1 $f14, 0x18($sp)
/* 007458 80006858 44818800 */ mtc1 $at, $f17
/* 00745C 8000685C 44808000 */ mtc1 $zero, $f16
/* 007460 80006860 4606103C */ c.lt.s $f2, $f6
/* 007464 80006864 3C0D8012 */ lui $t5, %hi(D_80119C3C) # $t5, 0x8012
/* 007468 80006868 45000002 */ bc1f .L80006874
/* 00746C 8000686C 46009021 */ cvt.d.s $f0, $f18
/* 007470 80006870 46001087 */ neg.s $f2, $f2
.L80006874:
/* 007474 80006874 4620803C */ c.lt.d $f16, $f0
/* 007478 80006878 46026280 */ add.s $f10, $f12, $f2
/* 00747C 8000687C 45000004 */ bc1f .L80006890
/* 007480 80006880 460A7380 */ add.s $f14, $f14, $f10
/* 007484 80006884 46300201 */ sub.d $f8, $f0, $f16
/* 007488 80006888 10000003 */ b .L80006898
/* 00748C 8000688C 462044A0 */ cvt.s.d $f18, $f8
.L80006890:
/* 007490 80006890 44809000 */ mtc1 $zero, $f18
/* 007494 80006894 00000000 */ nop
.L80006898:
/* 007498 80006898 C46400CC */ lwc1 $f4, 0xcc($v1)
/* 00749C 8000689C 44805800 */ mtc1 $zero, $f11
/* 0074A0 800068A0 44805000 */ mtc1 $zero, $f10
/* 0074A4 800068A4 46049182 */ mul.s $f6, $f18, $f4
/* 0074A8 800068A8 46009221 */ cvt.d.s $f8, $f18
/* 0074AC 800068AC 46285032 */ c.eq.d $f10, $f8
/* 0074B0 800068B0 3C01800E */ lui $at, 0x800e
/* 0074B4 800068B4 45010032 */ bc1t .L80006980
/* 0074B8 800068B8 46067380 */ add.s $f14, $f14, $f6
/* 0074BC 800068BC 8DAD9C3C */ lw $t5, %lo(D_80119C3C)($t5)
/* 0074C0 800068C0 00000000 */ nop
/* 0074C4 800068C4 81A20185 */ lb $v0, 0x185($t5)
/* 0074C8 800068C8 00000000 */ nop
/* 0074CC 800068CC 1040002C */ beqz $v0, .L80006980
/* 0074D0 800068D0 00000000 */ nop
/* 0074D4 800068D4 2841000B */ slti $at, $v0, 0xb
/* 0074D8 800068D8 10200003 */ beqz $at, .L800068E8
/* 0074DC 800068DC 2404000A */ li $a0, 10
/* 0074E0 800068E0 10000001 */ b .L800068E8
/* 0074E4 800068E4 00402025 */ move $a0, $v0
.L800068E8:
/* 0074E8 800068E8 44843000 */ mtc1 $a0, $f6
/* 0074EC 800068EC 3C01800E */ lui $at, %hi(D_800E4C8C) # $at, 0x800e
/* 0074F0 800068F0 468032A1 */ cvt.d.w $f10, $f6
/* 0074F4 800068F4 C4254C80 */ lwc1 $f5, %lo(D_800E4C80)($at)
/* 0074F8 800068F8 C4244C84 */ lwc1 $f4, %lo(D_800E4C84)($at)
/* 0074FC 800068FC C46C003C */ lwc1 $f12, 0x3c($v1)
/* 007500 80006900 462A2002 */ mul.d $f0, $f4, $f10
/* 007504 80006904 460060A1 */ cvt.d.s $f2, $f12
/* 007508 80006908 00047180 */ sll $t6, $a0, 6
/* 00750C 8000690C 4620103C */ c.lt.d $f2, $f0
/* 007510 80006910 00000000 */ nop
/* 007514 80006914 4500000E */ bc1f .L80006950
/* 007518 80006918 00000000 */ nop
/* 00751C 8000691C 448E4000 */ mtc1 $t6, $f8
/* 007520 80006920 00000000 */ nop
/* 007524 80006924 468041A1 */ cvt.d.w $f6, $f8
/* 007528 80006928 00000000 */ nop
/* 00752C 8000692C 46260103 */ div.d $f4, $f0, $f6
/* 007530 80006930 46241280 */ add.d $f10, $f2, $f4
/* 007534 80006934 46205220 */ cvt.s.d $f8, $f10
/* 007538 80006938 E468003C */ swc1 $f8, 0x3c($v1)
/* 00753C 8000693C 8D230000 */ lw $v1, ($t1)
/* 007540 80006940 00000000 */ nop
/* 007544 80006944 C46C003C */ lwc1 $f12, 0x3c($v1)
/* 007548 80006948 10000019 */ b .L800069B0
/* 00754C 8000694C 460C7380 */ add.s $f14, $f14, $f12
.L80006950:
/* 007550 80006950 4622003C */ c.lt.d $f0, $f2
/* 007554 80006954 00000000 */ nop
/* 007558 80006958 45000007 */ bc1f .L80006978
/* 00755C 8000695C 00000000 */ nop
/* 007560 80006960 462001A0 */ cvt.s.d $f6, $f0
/* 007564 80006964 E466003C */ swc1 $f6, 0x3c($v1)
/* 007568 80006968 8D230000 */ lw $v1, ($t1)
/* 00756C 8000696C 00000000 */ nop
/* 007570 80006970 C46C003C */ lwc1 $f12, 0x3c($v1)
/* 007574 80006974 00000000 */ nop
.L80006978:
/* 007578 80006978 1000000D */ b .L800069B0
/* 00757C 8000697C 460C7380 */ add.s $f14, $f14, $f12
.L80006980:
/* 007580 80006980 C464003C */ lwc1 $f4, 0x3c($v1)
/* 007584 80006984 C4294C88 */ lwc1 $f9, %lo(D_800E4C88)($at)
/* 007588 80006988 C4284C8C */ lwc1 $f8, %lo(D_800E4C8C)($at)
/* 00758C 8000698C 460022A1 */ cvt.d.s $f10, $f4
/* 007590 80006990 46285182 */ mul.d $f6, $f10, $f8
/* 007594 80006994 46203120 */ cvt.s.d $f4, $f6
/* 007598 80006998 E464003C */ swc1 $f4, 0x3c($v1)
/* 00759C 8000699C 8D230000 */ lw $v1, ($t1)
/* 0075A0 800069A0 00000000 */ nop
/* 0075A4 800069A4 C46A003C */ lwc1 $f10, 0x3c($v1)
/* 0075A8 800069A8 00000000 */ nop
/* 0075AC 800069AC 460A7380 */ add.s $f14, $f14, $f10
.L800069B0:
/* 0075B0 800069B0 C460005C */ lwc1 $f0, 0x5c($v1)
/* 0075B4 800069B4 3C014100 */ li $at, 0x41000000 # 8.000000
/* 0075B8 800069B8 44813000 */ mtc1 $at, $f6
/* 0075BC 800069BC 46007201 */ sub.s $f8, $f14, $f0
/* 0075C0 800069C0 3C01800E */ lui $at, %hi(D_800E4C90) # $at, 0x800e
/* 0075C4 800069C4 46064103 */ div.s $f4, $f8, $f6
/* 0075C8 800069C8 46040280 */ add.s $f10, $f0, $f4
/* 0075CC 800069CC E46A005C */ swc1 $f10, 0x5c($v1)
/* 0075D0 800069D0 8D230000 */ lw $v1, ($t1)
/* 0075D4 800069D4 C4284C94 */ lwc1 $f8, %lo(D_800E4C94)($at)
/* 0075D8 800069D8 C466005C */ lwc1 $f6, 0x5c($v1)
/* 0075DC 800069DC C4294C90 */ lwc1 $f9, %lo(D_800E4C90)($at)
/* 0075E0 800069E0 46003121 */ cvt.d.s $f4, $f6
/* 0075E4 800069E4 4624403C */ c.lt.d $f8, $f4
/* 0075E8 800069E8 3C01800E */ lui $at, %hi(D_800E4C98) # $at, 0x800e
/* 0075EC 800069EC 45000006 */ bc1f .L80006A08
/* 0075F0 800069F0 00000000 */ nop
/* 0075F4 800069F4 C42A4C98 */ lwc1 $f10, %lo(D_800E4C98)($at)
/* 0075F8 800069F8 00000000 */ nop
/* 0075FC 800069FC E46A005C */ swc1 $f10, 0x5c($v1)
/* 007600 80006A00 8D230000 */ lw $v1, ($t1)
/* 007604 80006A04 00000000 */ nop
.L80006A08:
/* 007608 80006A08 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 00760C 80006A0C 44813000 */ mtc1 $at, $f6
/* 007610 80006A10 44804000 */ mtc1 $zero, $f8
/* 007614 80006A14 E4660060 */ swc1 $f6, 0x60($v1)
/* 007618 80006A18 8D2F0000 */ lw $t7, ($t1)
/* 00761C 80006A1C 3C028012 */ lui $v0, %hi(D_80119C3C) # $v0, 0x8012
/* 007620 80006A20 E5E80058 */ swc1 $f8, 0x58($t7)
/* 007624 80006A24 8C429C3C */ lw $v0, %lo(D_80119C3C)($v0)
/* 007628 80006A28 2401FFFF */ li $at, -1
/* 00762C 80006A2C 84580000 */ lh $t8, ($v0)
/* 007630 80006A30 00000000 */ nop
/* 007634 80006A34 13010011 */ beq $t8, $at, .L80006A7C
/* 007638 80006A38 00000000 */ nop
/* 00763C 80006A3C 805901DB */ lb $t9, 0x1db($v0)
/* 007640 80006A40 00000000 */ nop
/* 007644 80006A44 1320000D */ beqz $t9, .L80006A7C
/* 007648 80006A48 00000000 */ nop
/* 00764C 80006A4C 8D230000 */ lw $v1, ($t1)
/* 007650 80006A50 240B0001 */ li $t3, 1
/* 007654 80006A54 906A00D8 */ lbu $t2, 0xd8($v1)
/* 007658 80006A58 2404013D */ li $a0, 317
/* 00765C 80006A5C 15400007 */ bnez $t2, .L80006A7C
/* 007660 80006A60 00000000 */ nop
/* 007664 80006A64 A06B00D8 */ sb $t3, 0xd8($v1)
/* 007668 80006A68 8D250000 */ lw $a1, ($t1)
/* 00766C 80006A6C 0C000741 */ jal func_80001D04
/* 007670 80006A70 24A500DC */ addiu $a1, $a1, 0xdc
/* 007674 80006A74 10000011 */ b .L80006ABC
/* 007678 80006A78 8FBF0014 */ lw $ra, 0x14($sp)
.L80006A7C:
/* 00767C 80006A7C 804C01DB */ lb $t4, 0x1db($v0)
/* 007680 80006A80 00000000 */ nop
/* 007684 80006A84 1580000D */ bnez $t4, .L80006ABC
/* 007688 80006A88 8FBF0014 */ lw $ra, 0x14($sp)
/* 00768C 80006A8C 8D2D0000 */ lw $t5, ($t1)
/* 007690 80006A90 00000000 */ nop
/* 007694 80006A94 A1A000D8 */ sb $zero, 0xd8($t5)
/* 007698 80006A98 8D2E0000 */ lw $t6, ($t1)
/* 00769C 80006A9C 00000000 */ nop
/* 0076A0 80006AA0 8DC400DC */ lw $a0, 0xdc($t6)
/* 0076A4 80006AA4 00000000 */ nop
/* 0076A8 80006AA8 10800004 */ beqz $a0, .L80006ABC
/* 0076AC 80006AAC 8FBF0014 */ lw $ra, 0x14($sp)
/* 0076B0 80006AB0 0C001223 */ jal func_8000488C
/* 0076B4 80006AB4 00000000 */ nop
/* 0076B8 80006AB8 8FBF0014 */ lw $ra, 0x14($sp)
.L80006ABC:
/* 0076BC 80006ABC 27BD0030 */ addiu $sp, $sp, 0x30
/* 0076C0 80006AC0 03E00008 */ jr $ra
/* 0076C4 80006AC4 00000000 */ nop
@@ -0,0 +1,86 @@
glabel func_80006AC8
/* 0076C8 80006AC8 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 0076CC 80006ACC AFBF0024 */ sw $ra, 0x24($sp)
/* 0076D0 80006AD0 AFB20020 */ sw $s2, 0x20($sp)
/* 0076D4 80006AD4 AFB1001C */ sw $s1, 0x1c($sp)
/* 0076D8 80006AD8 AFB00018 */ sw $s0, 0x18($sp)
/* 0076DC 80006ADC AFA40028 */ sw $a0, 0x28($sp)
/* 0076E0 80006AE0 8C8F0064 */ lw $t7, 0x64($a0)
/* 0076E4 80006AE4 3C128012 */ lui $s2, %hi(D_80119C38) # $s2, 0x8012
/* 0076E8 80006AE8 8DE50118 */ lw $a1, 0x118($t7)
/* 0076EC 80006AEC 26529C38 */ addiu $s2, %lo(D_80119C38) # addiu $s2, $s2, -0x63c8
/* 0076F0 80006AF0 10A0003C */ beqz $a1, .L80006BE4
/* 0076F4 80006AF4 AE450000 */ sw $a1, ($s2)
/* 0076F8 80006AF8 00008025 */ move $s0, $zero
/* 0076FC 80006AFC 24110008 */ li $s1, 8
/* 007700 80006B00 00B0C821 */ addu $t9, $a1, $s0
.L80006B04:
/* 007704 80006B04 8F240048 */ lw $a0, 0x48($t9)
/* 007708 80006B08 00000000 */ nop
/* 00770C 80006B0C 10800009 */ beqz $a0, .L80006B34
/* 007710 80006B10 00000000 */ nop
/* 007714 80006B14 0C001223 */ jal func_8000488C
/* 007718 80006B18 00000000 */ nop
/* 00771C 80006B1C 8E480000 */ lw $t0, ($s2)
/* 007720 80006B20 00000000 */ nop
/* 007724 80006B24 01104821 */ addu $t1, $t0, $s0
/* 007728 80006B28 AD200048 */ sw $zero, 0x48($t1)
/* 00772C 80006B2C 8E450000 */ lw $a1, ($s2)
/* 007730 80006B30 00000000 */ nop
.L80006B34:
/* 007734 80006B34 26100004 */ addiu $s0, $s0, 4
/* 007738 80006B38 1611FFF2 */ bne $s0, $s1, .L80006B04
/* 00773C 80006B3C 00B0C821 */ addu $t9, $a1, $s0
/* 007740 80006B40 8CA40050 */ lw $a0, 0x50($a1)
/* 007744 80006B44 00000000 */ nop
/* 007748 80006B48 10800008 */ beqz $a0, .L80006B6C
/* 00774C 80006B4C 00000000 */ nop
/* 007750 80006B50 0C001223 */ jal func_8000488C
/* 007754 80006B54 00000000 */ nop
/* 007758 80006B58 8E4A0000 */ lw $t2, ($s2)
/* 00775C 80006B5C 00000000 */ nop
/* 007760 80006B60 AD400050 */ sw $zero, 0x50($t2)
/* 007764 80006B64 8E450000 */ lw $a1, ($s2)
/* 007768 80006B68 00000000 */ nop
.L80006B6C:
/* 00776C 80006B6C 8CA400A8 */ lw $a0, 0xa8($a1)
/* 007770 80006B70 00000000 */ nop
/* 007774 80006B74 10800008 */ beqz $a0, .L80006B98
/* 007778 80006B78 00000000 */ nop
/* 00777C 80006B7C 0C001223 */ jal func_8000488C
/* 007780 80006B80 00000000 */ nop
/* 007784 80006B84 8E4B0000 */ lw $t3, ($s2)
/* 007788 80006B88 00000000 */ nop
/* 00778C 80006B8C AD6000A8 */ sw $zero, 0xa8($t3)
/* 007790 80006B90 8E450000 */ lw $a1, ($s2)
/* 007794 80006B94 00000000 */ nop
.L80006B98:
/* 007798 80006B98 3C028012 */ lui $v0, %hi(D_80119C30) # $v0, 0x8012
/* 00779C 80006B9C 3C038012 */ lui $v1, %hi(D_80119C38) # $v1, 0x8012
/* 0077A0 80006BA0 24639C38 */ addiu $v1, %lo(D_80119C38) # addiu $v1, $v1, -0x63c8
/* 0077A4 80006BA4 24429C30 */ addiu $v0, %lo(D_80119C30) # addiu $v0, $v0, -0x63d0
.L80006BA8:
/* 0077A8 80006BA8 8C4C0000 */ lw $t4, ($v0)
/* 0077AC 80006BAC 00000000 */ nop
/* 0077B0 80006BB0 14AC0002 */ bne $a1, $t4, .L80006BBC
/* 0077B4 80006BB4 00000000 */ nop
/* 0077B8 80006BB8 AC400000 */ sw $zero, ($v0)
.L80006BBC:
/* 0077BC 80006BBC 24420004 */ addiu $v0, $v0, 4
/* 0077C0 80006BC0 1443FFF9 */ bne $v0, $v1, .L80006BA8
/* 0077C4 80006BC4 00000000 */ nop
/* 0077C8 80006BC8 0C01C450 */ jal func_80071140
/* 0077CC 80006BCC 00A02025 */ move $a0, $a1
/* 0077D0 80006BD0 8FAD0028 */ lw $t5, 0x28($sp)
/* 0077D4 80006BD4 00000000 */ nop
/* 0077D8 80006BD8 8DAE0064 */ lw $t6, 0x64($t5)
/* 0077DC 80006BDC 00000000 */ nop
/* 0077E0 80006BE0 ADC00118 */ sw $zero, 0x118($t6)
.L80006BE4:
/* 0077E4 80006BE4 8FBF0024 */ lw $ra, 0x24($sp)
/* 0077E8 80006BE8 8FB00018 */ lw $s0, 0x18($sp)
/* 0077EC 80006BEC 8FB1001C */ lw $s1, 0x1c($sp)
/* 0077F0 80006BF0 8FB20020 */ lw $s2, 0x20($sp)
/* 0077F4 80006BF4 03E00008 */ jr $ra
/* 0077F8 80006BF8 27BD0028 */ addiu $sp, $sp, 0x28
@@ -0,0 +1,259 @@
glabel func_80006BFC
/* 0077FC 80006BFC 27BDFFB8 */ addiu $sp, $sp, -0x48
/* 007800 80006C00 AFBF0014 */ sw $ra, 0x14($sp)
/* 007804 80006C04 AFA70054 */ sw $a3, 0x54($sp)
/* 007808 80006C08 8CC20064 */ lw $v0, 0x64($a2)
/* 00780C 80006C0C 8C830064 */ lw $v1, 0x64($a0)
/* 007810 80006C10 8C4E0118 */ lw $t6, 0x118($v0)
/* 007814 80006C14 3C018012 */ lui $at, %hi(D_80119C38) # $at, 0x8012
/* 007818 80006C18 3C0F8012 */ lui $t7, %hi(D_80119C38) # $t7, 0x8012
/* 00781C 80006C1C AC2E9C38 */ sw $t6, %lo(D_80119C38)($at)
/* 007820 80006C20 8DEF9C38 */ lw $t7, %lo(D_80119C38)($t7)
/* 007824 80006C24 00000000 */ nop
/* 007828 80006C28 11E000E4 */ beqz $t7, .L80006FBC
/* 00782C 80006C2C 8FBF0014 */ lw $ra, 0x14($sp)
/* 007830 80006C30 10A0000E */ beqz $a1, .L80006C6C
/* 007834 80006C34 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 007838 80006C38 84780000 */ lh $t8, ($v1)
/* 00783C 80006C3C 44814000 */ mtc1 $at, $f8
/* 007840 80006C40 0018C900 */ sll $t9, $t8, 4
/* 007844 80006C44 0338C821 */ addu $t9, $t9, $t8
/* 007848 80006C48 0019C880 */ sll $t9, $t9, 2
/* 00784C 80006C4C 00B91021 */ addu $v0, $a1, $t9
/* 007850 80006C50 C4440010 */ lwc1 $f4, 0x10($v0)
/* 007854 80006C54 C452000C */ lwc1 $f18, 0xc($v0)
/* 007858 80006C58 E7A40038 */ swc1 $f4, 0x38($sp)
/* 00785C 80006C5C C4460014 */ lwc1 $f6, 0x14($v0)
/* 007860 80006C60 E7A8001C */ swc1 $f8, 0x1c($sp)
/* 007864 80006C64 10000047 */ b .L80006D84
/* 007868 80006C68 E7A60034 */ swc1 $f6, 0x34($sp)
.L80006C6C:
/* 00786C 80006C6C C48A0010 */ lwc1 $f10, 0x10($a0)
/* 007870 80006C70 C492000C */ lwc1 $f18, 0xc($a0)
/* 007874 80006C74 E7AA0038 */ swc1 $f10, 0x38($sp)
/* 007878 80006C78 C4840014 */ lwc1 $f4, 0x14($a0)
/* 00787C 80006C7C 24010001 */ li $at, 1
/* 007880 80006C80 E7A40034 */ swc1 $f4, 0x34($sp)
/* 007884 80006C84 806201D6 */ lb $v0, 0x1d6($v1)
/* 007888 80006C88 00000000 */ nop
/* 00788C 80006C8C 10400005 */ beqz $v0, .L80006CA4
/* 007890 80006C90 00000000 */ nop
/* 007894 80006C94 1041000E */ beq $v0, $at, .L80006CD0
/* 007898 80006C98 00000000 */ nop
/* 00789C 80006C9C 1000001B */ b .L80006D0C
/* 0078A0 80006CA0 C480001C */ lwc1 $f0, 0x1c($a0)
.L80006CA4:
/* 0078A4 80006CA4 C460002C */ lwc1 $f0, 0x2c($v1)
/* 0078A8 80006CA8 44803000 */ mtc1 $zero, $f6
/* 0078AC 80006CAC 00000000 */ nop
/* 0078B0 80006CB0 4600303E */ c.le.s $f6, $f0
/* 0078B4 80006CB4 00000000 */ nop
/* 0078B8 80006CB8 45000003 */ bc1f .L80006CC8
/* 0078BC 80006CBC 00000000 */ nop
/* 0078C0 80006CC0 10000021 */ b .L80006D48
/* 0078C4 80006CC4 46000086 */ mov.s $f2, $f0
.L80006CC8:
/* 0078C8 80006CC8 1000001F */ b .L80006D48
/* 0078CC 80006CCC 46000087 */ neg.s $f2, $f0
.L80006CD0:
/* 0078D0 80006CD0 C480001C */ lwc1 $f0, 0x1c($a0)
/* 0078D4 80006CD4 C4820024 */ lwc1 $f2, 0x24($a0)
/* 0078D8 80006CD8 46000202 */ mul.s $f8, $f0, $f0
/* 0078DC 80006CDC E7B2003C */ swc1 $f18, 0x3c($sp)
/* 0078E0 80006CE0 AFA60050 */ sw $a2, 0x50($sp)
/* 0078E4 80006CE4 AFA30044 */ sw $v1, 0x44($sp)
/* 0078E8 80006CE8 46021282 */ mul.s $f10, $f2, $f2
/* 0078EC 80006CEC 0C0326B4 */ jal sqrtf
/* 0078F0 80006CF0 460A4300 */ add.s $f12, $f8, $f10
/* 0078F4 80006CF4 8FA30044 */ lw $v1, 0x44($sp)
/* 0078F8 80006CF8 8FA60050 */ lw $a2, 0x50($sp)
/* 0078FC 80006CFC C7B2003C */ lwc1 $f18, 0x3c($sp)
/* 007900 80006D00 10000011 */ b .L80006D48
/* 007904 80006D04 46000086 */ mov.s $f2, $f0
/* 007908 80006D08 C480001C */ lwc1 $f0, 0x1c($a0)
.L80006D0C:
/* 00790C 80006D0C C4820024 */ lwc1 $f2, 0x24($a0)
/* 007910 80006D10 46000102 */ mul.s $f4, $f0, $f0
/* 007914 80006D14 C48E0020 */ lwc1 $f14, 0x20($a0)
/* 007918 80006D18 E7B2003C */ swc1 $f18, 0x3c($sp)
/* 00791C 80006D1C AFA60050 */ sw $a2, 0x50($sp)
/* 007920 80006D20 46021182 */ mul.s $f6, $f2, $f2
/* 007924 80006D24 AFA30044 */ sw $v1, 0x44($sp)
/* 007928 80006D28 460E7282 */ mul.s $f10, $f14, $f14
/* 00792C 80006D2C 46062200 */ add.s $f8, $f4, $f6
/* 007930 80006D30 0C0326B4 */ jal sqrtf
/* 007934 80006D34 460A4300 */ add.s $f12, $f8, $f10
/* 007938 80006D38 8FA30044 */ lw $v1, 0x44($sp)
/* 00793C 80006D3C 8FA60050 */ lw $a2, 0x50($sp)
/* 007940 80006D40 C7B2003C */ lwc1 $f18, 0x3c($sp)
/* 007944 80006D44 46000086 */ mov.s $f2, $f0
.L80006D48:
/* 007948 80006D48 3C014170 */ li $at, 0x41700000 # 15.000000
/* 00794C 80006D4C 44818000 */ mtc1 $at, $f16
/* 007950 80006D50 00000000 */ nop
/* 007954 80006D54 4602803C */ c.lt.s $f16, $f2
/* 007958 80006D58 00000000 */ nop
/* 00795C 80006D5C 45000003 */ bc1f .L80006D6C
/* 007960 80006D60 00000000 */ nop
/* 007964 80006D64 46008086 */ mov.s $f2, $f16
/* 007968 80006D68 00000000 */ nop
.L80006D6C:
/* 00796C 80006D6C 46101183 */ div.s $f6, $f2, $f16
/* 007970 80006D70 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 007974 80006D74 44812000 */ mtc1 $at, $f4
/* 007978 80006D78 00000000 */ nop
/* 00797C 80006D7C 46062201 */ sub.s $f8, $f4, $f6
/* 007980 80006D80 E7A8001C */ swc1 $f8, 0x1c($sp)
.L80006D84:
/* 007984 80006D84 C4CA000C */ lwc1 $f10, 0xc($a2)
/* 007988 80006D88 C4C40010 */ lwc1 $f4, 0x10($a2)
/* 00798C 80006D8C C7A60038 */ lwc1 $f6, 0x38($sp)
/* 007990 80006D90 46125001 */ sub.s $f0, $f10, $f18
/* 007994 80006D94 C7AA0034 */ lwc1 $f10, 0x34($sp)
/* 007998 80006D98 46062081 */ sub.s $f2, $f4, $f6
/* 00799C 80006D9C C4C80014 */ lwc1 $f8, 0x14($a2)
/* 0079A0 80006DA0 46000102 */ mul.s $f4, $f0, $f0
/* 0079A4 80006DA4 460A4381 */ sub.s $f14, $f8, $f10
/* 0079A8 80006DA8 AFA30044 */ sw $v1, 0x44($sp)
/* 0079AC 80006DAC 46021182 */ mul.s $f6, $f2, $f2
/* 0079B0 80006DB0 00000000 */ nop
/* 0079B4 80006DB4 460E7282 */ mul.s $f10, $f14, $f14
/* 0079B8 80006DB8 46062200 */ add.s $f8, $f4, $f6
/* 0079BC 80006DBC 0C0326B4 */ jal sqrtf
/* 0079C0 80006DC0 460A4300 */ add.s $f12, $f8, $f10
/* 0079C4 80006DC4 8FA30044 */ lw $v1, 0x44($sp)
/* 0079C8 80006DC8 E7A00020 */ swc1 $f0, 0x20($sp)
/* 0079CC 80006DCC 84680000 */ lh $t0, ($v1)
/* 0079D0 80006DD0 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012
/* 0079D4 80006DD4 8C429C38 */ lw $v0, %lo(D_80119C38)($v0)
/* 0079D8 80006DD8 8FAB0054 */ lw $t3, 0x54($sp)
/* 0079DC 80006DDC 00084880 */ sll $t1, $t0, 2
/* 0079E0 80006DE0 448B4000 */ mtc1 $t3, $f8
/* 0079E4 80006DE4 00495021 */ addu $t2, $v0, $t1
/* 0079E8 80006DE8 C544006C */ lwc1 $f4, 0x6c($t2)
/* 0079EC 80006DEC 468042A0 */ cvt.s.w $f10, $f8
/* 0079F0 80006DF0 3C014170 */ li $at, 0x41700000 # 15.000000
/* 0079F4 80006DF4 44818000 */ mtc1 $at, $f16
/* 0079F8 80006DF8 46002181 */ sub.s $f6, $f4, $f0
/* 0079FC 80006DFC 3C01C170 */ li $at, 0xC1700000 # -15.000000
/* 007A00 80006E00 460A3083 */ div.s $f2, $f6, $f10
/* 007A04 80006E04 4602803C */ c.lt.s $f16, $f2
/* 007A08 80006E08 00000000 */ nop
/* 007A0C 80006E0C 45000003 */ bc1f .L80006E1C
/* 007A10 80006E10 00000000 */ nop
/* 007A14 80006E14 10000008 */ b .L80006E38
/* 007A18 80006E18 46008086 */ mov.s $f2, $f16
.L80006E1C:
/* 007A1C 80006E1C 44810000 */ mtc1 $at, $f0
/* 007A20 80006E20 00000000 */ nop
/* 007A24 80006E24 4600103C */ c.lt.s $f2, $f0
/* 007A28 80006E28 00000000 */ nop
/* 007A2C 80006E2C 45000002 */ bc1f .L80006E38
/* 007A30 80006E30 00000000 */ nop
/* 007A34 80006E34 46000086 */ mov.s $f2, $f0
.L80006E38:
/* 007A38 80006E38 C44C005C */ lwc1 $f12, 0x5c($v0)
/* 007A3C 80006E3C E7A20024 */ swc1 $f2, 0x24($sp)
/* 007A40 80006E40 0C001FE9 */ jal func_80007FA4
/* 007A44 80006E44 AFA30044 */ sw $v1, 0x44($sp)
/* 007A48 80006E48 3C01428C */ li $at, 0x428C0000 # 70.000000
/* 007A4C 80006E4C 44816000 */ mtc1 $at, $f12
/* 007A50 80006E50 C7A20024 */ lwc1 $f2, 0x24($sp)
/* 007A54 80006E54 3C01800E */ lui $at, %hi(D_800E4CA4) # $at, 0x800e
/* 007A58 80006E58 46026100 */ add.s $f4, $f12, $f2
/* 007A5C 80006E5C C4254CA0 */ lwc1 $f5, %lo(D_800E4CA0)($at)
/* 007A60 80006E60 46026201 */ sub.s $f8, $f12, $f2
/* 007A64 80006E64 00000000 */ nop
/* 007A68 80006E68 46082183 */ div.s $f6, $f4, $f8
/* 007A6C 80006E6C C4244CA4 */ lwc1 $f4, %lo(D_800E4CA4)($at)
/* 007A70 80006E70 460002A1 */ cvt.d.s $f10, $f0
/* 007A74 80006E74 46245202 */ mul.d $f8, $f10, $f4
/* 007A78 80006E78 444CF800 */ cfc1 $t4, $31
/* 007A7C 80006E7C 00000000 */ nop
/* 007A80 80006E80 35810003 */ ori $at, $t4, 3
/* 007A84 80006E84 38210002 */ xori $at, $at, 2
/* 007A88 80006E88 44C1F800 */ ctc1 $at, $31
/* 007A8C 80006E8C 00000000 */ nop
/* 007A90 80006E90 462042A4 */ cvt.w.d $f10, $f8
/* 007A94 80006E94 440D5000 */ mfc1 $t5, $f10
/* 007A98 80006E98 44CCF800 */ ctc1 $t4, $31
/* 007A9C 80006E9C 448D2000 */ mtc1 $t5, $f4
/* 007AA0 80006EA0 00000000 */ nop
/* 007AA4 80006EA4 46802220 */ cvt.s.w $f8, $f4
/* 007AA8 80006EA8 46083282 */ mul.s $f10, $f6, $f8
/* 007AAC 80006EAC 444EF800 */ cfc1 $t6, $31
/* 007AB0 80006EB0 00000000 */ nop
/* 007AB4 80006EB4 35C10003 */ ori $at, $t6, 3
/* 007AB8 80006EB8 38210002 */ xori $at, $at, 2
/* 007ABC 80006EBC 44C1F800 */ ctc1 $at, $31
/* 007AC0 80006EC0 00000000 */ nop
/* 007AC4 80006EC4 46005124 */ cvt.w.s $f4, $f10
/* 007AC8 80006EC8 44042000 */ mfc1 $a0, $f4
/* 007ACC 80006ECC 44CEF800 */ ctc1 $t6, $31
/* 007AD0 80006ED0 0C032678 */ jal func_800C99E0
/* 007AD4 80006ED4 00000000 */ nop
/* 007AD8 80006ED8 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012
/* 007ADC 80006EDC 8C429C38 */ lw $v0, %lo(D_80119C38)($v0)
/* 007AE0 80006EE0 3C014000 */ li $at, 0x40000000 # 2.000000
/* 007AE4 80006EE4 C446005C */ lwc1 $f6, 0x5c($v0)
/* 007AE8 80006EE8 C4420068 */ lwc1 $f2, 0x68($v0)
/* 007AEC 80006EEC 46060201 */ sub.s $f8, $f0, $f6
/* 007AF0 80006EF0 44812000 */ mtc1 $at, $f4
/* 007AF4 80006EF4 46024281 */ sub.s $f10, $f8, $f2
/* 007AF8 80006EF8 8FA30044 */ lw $v1, 0x44($sp)
/* 007AFC 80006EFC 46045183 */ div.s $f6, $f10, $f4
/* 007B00 80006F00 3C01800E */ lui $at, %hi(D_800E4CA8) # $at, 0x800e
/* 007B04 80006F04 46061200 */ add.s $f8, $f2, $f6
/* 007B08 80006F08 E4480068 */ swc1 $f8, 0x68($v0)
/* 007B0C 80006F0C 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012
/* 007B10 80006F10 8C429C38 */ lw $v0, %lo(D_80119C38)($v0)
/* 007B14 80006F14 C7A4001C */ lwc1 $f4, 0x1c($sp)
/* 007B18 80006F18 C44A0068 */ lwc1 $f10, 0x68($v0)
/* 007B1C 80006F1C 00000000 */ nop
/* 007B20 80006F20 46045182 */ mul.s $f6, $f10, $f4
/* 007B24 80006F24 E4460068 */ swc1 $f6, 0x68($v0)
/* 007B28 80006F28 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012
/* 007B2C 80006F2C 8C429C38 */ lw $v0, %lo(D_80119C38)($v0)
/* 007B30 80006F30 C42A4CAC */ lwc1 $f10, %lo(D_800E4CAC)($at)
/* 007B34 80006F34 C4480068 */ lwc1 $f8, 0x68($v0)
/* 007B38 80006F38 C42B4CA8 */ lwc1 $f11, %lo(D_800E4CA8)($at)
/* 007B3C 80006F3C 46004321 */ cvt.d.s $f12, $f8
/* 007B40 80006F40 462C503C */ c.lt.d $f10, $f12
/* 007B44 80006F44 3C01800E */ lui $at, 0x800e
/* 007B48 80006F48 45000009 */ bc1f .L80006F70
/* 007B4C 80006F4C 00000000 */ nop
/* 007B50 80006F50 3C01800E */ lui $at, %hi(D_800E4CBC) # $at, 0x800e
/* 007B54 80006F54 C4244CB0 */ lwc1 $f4, %lo(D_800E4CB0)($at)
/* 007B58 80006F58 00000000 */ nop
/* 007B5C 80006F5C E4440068 */ swc1 $f4, 0x68($v0)
/* 007B60 80006F60 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012
/* 007B64 80006F64 8C429C38 */ lw $v0, %lo(D_80119C38)($v0)
/* 007B68 80006F68 1000000F */ b .L80006FA8
/* 007B6C 80006F6C 846F0000 */ lh $t7, ($v1)
.L80006F70:
/* 007B70 80006F70 C4274CB8 */ lwc1 $f7, %lo(D_800E4CB8)($at)
/* 007B74 80006F74 C4264CBC */ lwc1 $f6, %lo(D_800E4CBC)($at)
/* 007B78 80006F78 3C01800E */ lui $at, %hi(D_800E4CC0) # $at, 0x800e
/* 007B7C 80006F7C 4626603C */ c.lt.d $f12, $f6
/* 007B80 80006F80 00000000 */ nop
/* 007B84 80006F84 45000007 */ bc1f .L80006FA4
/* 007B88 80006F88 00000000 */ nop
/* 007B8C 80006F8C C4284CC0 */ lwc1 $f8, %lo(D_800E4CC0)($at)
/* 007B90 80006F90 00000000 */ nop
/* 007B94 80006F94 E4480068 */ swc1 $f8, 0x68($v0)
/* 007B98 80006F98 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012
/* 007B9C 80006F9C 8C429C38 */ lw $v0, %lo(D_80119C38)($v0)
/* 007BA0 80006FA0 00000000 */ nop
.L80006FA4:
/* 007BA4 80006FA4 846F0000 */ lh $t7, ($v1)
.L80006FA8:
/* 007BA8 80006FA8 C7AA0020 */ lwc1 $f10, 0x20($sp)
/* 007BAC 80006FAC 000FC080 */ sll $t8, $t7, 2
/* 007BB0 80006FB0 0058C821 */ addu $t9, $v0, $t8
/* 007BB4 80006FB4 E72A006C */ swc1 $f10, 0x6c($t9)
/* 007BB8 80006FB8 8FBF0014 */ lw $ra, 0x14($sp)
.L80006FBC:
/* 007BBC 80006FBC 27BD0048 */ addiu $sp, $sp, 0x48
/* 007BC0 80006FC0 03E00008 */ jr $ra
/* 007BC4 80006FC4 00000000 */ nop
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,43 @@
glabel func_80007FA4
/* 008BA4 80007FA4 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 008BA8 80007FA8 44818000 */ mtc1 $at, $f16
/* 008BAC 80007FAC 3C01800E */ lui $at, %hi(D_800E4CFC) # $at, 0x800e
/* 008BB0 80007FB0 46106101 */ sub.s $f4, $f12, $f16
/* 008BB4 80007FB4 C4334CF8 */ lwc1 $f19, %lo(D_800E4CF8)($at)
/* 008BB8 80007FB8 460C8180 */ add.s $f6, $f16, $f12
/* 008BBC 80007FBC C4324CFC */ lwc1 $f18, %lo(D_800E4CFC)($at)
/* 008BC0 80007FC0 46062303 */ div.s $f12, $f4, $f6
/* 008BC4 80007FC4 3C01BF80 */ li $at, 0xBF800000 # -1.000000
/* 008BC8 80007FC8 44801000 */ mtc1 $zero, $f2
/* 008BCC 80007FCC 44814000 */ mtc1 $at, $f8
/* 008BD0 80007FD0 24020001 */ li $v0, 1
/* 008BD4 80007FD4 46081281 */ sub.s $f10, $f2, $f8
/* 008BD8 80007FD8 3C014000 */ li $at, 0x40000000 # 2.000000
/* 008BDC 80007FDC 46005121 */ cvt.d.s $f4, $f10
/* 008BE0 80007FE0 4624903C */ c.lt.d $f18, $f4
/* 008BE4 80007FE4 00000000 */ nop
/* 008BE8 80007FE8 45000010 */ bc1f .L8000802C
/* 008BEC 80007FEC 46006386 */ mov.s $f14, $f12
/* 008BF0 80007FF0 460C6402 */ mul.s $f16, $f12, $f12
/* 008BF4 80007FF4 00000000 */ nop
.L80007FF8:
/* 008BF8 80007FF8 44823000 */ mtc1 $v0, $f6
/* 008BFC 80007FFC 46001006 */ mov.s $f0, $f2
/* 008C00 80008000 46803220 */ cvt.s.w $f8, $f6
/* 008C04 80008004 24420002 */ addiu $v0, $v0, 2
/* 008C08 80008008 46087283 */ div.s $f10, $f14, $f8
/* 008C0C 8000800C 46107382 */ mul.s $f14, $f14, $f16
/* 008C10 80008010 460A1080 */ add.s $f2, $f2, $f10
/* 008C14 80008014 46001101 */ sub.s $f4, $f2, $f0
/* 008C18 80008018 460021A1 */ cvt.d.s $f6, $f4
/* 008C1C 8000801C 4626903C */ c.lt.d $f18, $f6
/* 008C20 80008020 00000000 */ nop
/* 008C24 80008024 4501FFF4 */ bc1t .L80007FF8
/* 008C28 80008028 00000000 */ nop
.L8000802C:
/* 008C2C 8000802C 44814000 */ mtc1 $at, $f8
/* 008C30 80008030 00000000 */ nop
/* 008C34 80008034 46081002 */ mul.s $f0, $f2, $f8
/* 008C38 80008038 03E00008 */ jr $ra
/* 008C3C 8000803C 00000000 */ nop
@@ -0,0 +1,68 @@
glabel func_80008040
/* 008C40 80008040 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 008C44 80008044 AFBF0014 */ sw $ra, 0x14($sp)
/* 008C48 80008048 3C048012 */ lui $a0, %hi(D_80119C40) # $a0, 0x8012
/* 008C4C 8000804C 24849C40 */ addiu $a0, %lo(D_80119C40) # addiu $a0, $a0, -0x63c0
/* 008C50 80008050 00002825 */ move $a1, $zero
/* 008C54 80008054 0C00084A */ jal func_80002128
/* 008C58 80008058 00003025 */ move $a2, $zero
/* 008C5C 8000805C 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff
/* 008C60 80008060 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff
/* 008C64 80008064 0C01C327 */ jal func_80070C9C
/* 008C68 80008068 240405A0 */ li $a0, 1440
/* 008C6C 8000806C 3C068012 */ lui $a2, %hi(D_80119C48) # $a2, 0x8012
/* 008C70 80008070 24C69C48 */ addiu $a2, %lo(D_80119C48) # addiu $a2, $a2, -0x63b8
/* 008C74 80008074 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff
/* 008C78 80008078 ACC20000 */ sw $v0, ($a2)
/* 008C7C 8000807C 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff
/* 008C80 80008080 0C01C327 */ jal func_80070C9C
/* 008C84 80008084 240400A0 */ li $a0, 160
/* 008C88 80008088 3C018012 */ lui $at, %hi(D_80119C50) # $at, 0x8012
/* 008C8C 8000808C 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff
/* 008C90 80008090 AC229C50 */ sw $v0, %lo(D_80119C50)($at)
/* 008C94 80008094 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff
/* 008C98 80008098 0C01C327 */ jal func_80070C9C
/* 008C9C 8000809C 240400A0 */ li $a0, 160
/* 008CA0 800080A0 3C018012 */ lui $at, %hi(D_80119C44) # $at, 0x8012
/* 008CA4 800080A4 AC229C44 */ sw $v0, %lo(D_80119C44)($at)
/* 008CA8 800080A8 3C068012 */ lui $a2, %hi(D_80119C48) # $a2, 0x8012
/* 008CAC 800080AC 3C01800E */ lui $at, %hi(D_800DC6E0) # $at, 0x800e
/* 008CB0 800080B0 3C028012 */ lui $v0, %hi(D_8011A6D8) # $v0, 0x8012
/* 008CB4 800080B4 3C038012 */ lui $v1, %hi(D_80119C58) # $v1, 0x8012
/* 008CB8 800080B8 24C69C48 */ addiu $a2, %lo(D_80119C48) # addiu $a2, $a2, -0x63b8
/* 008CBC 800080BC A420C6E0 */ sh $zero, %lo(D_800DC6E0)($at)
/* 008CC0 800080C0 24639C58 */ addiu $v1, %lo(D_80119C58) # addiu $v1, $v1, -0x63a8
/* 008CC4 800080C4 2442A6D8 */ addiu $v0, %lo(D_8011A6D8) # addiu $v0, $v0, -0x5928
.L800080C8:
/* 008CC8 800080C8 24630180 */ addiu $v1, $v1, 0x180
/* 008CCC 800080CC 0062082B */ sltu $at, $v1, $v0
/* 008CD0 800080D0 1420FFFD */ bnez $at, .L800080C8
/* 008CD4 800080D4 AC60FFF8 */ sw $zero, -8($v1)
/* 008CD8 800080D8 00001025 */ move $v0, $zero
/* 008CDC 800080DC 240305A0 */ li $v1, 1440
.L800080E0:
/* 008CE0 800080E0 8CCE0000 */ lw $t6, ($a2)
/* 008CE4 800080E4 00000000 */ nop
/* 008CE8 800080E8 01C27821 */ addu $t7, $t6, $v0
/* 008CEC 800080EC ADE00018 */ sw $zero, 0x18($t7)
/* 008CF0 800080F0 8CD80000 */ lw $t8, ($a2)
/* 008CF4 800080F4 00000000 */ nop
/* 008CF8 800080F8 0302C821 */ addu $t9, $t8, $v0
/* 008CFC 800080FC AF20003C */ sw $zero, 0x3c($t9)
/* 008D00 80008100 8CC80000 */ lw $t0, ($a2)
/* 008D04 80008104 00000000 */ nop
/* 008D08 80008108 01024821 */ addu $t1, $t0, $v0
/* 008D0C 8000810C AD200060 */ sw $zero, 0x60($t1)
/* 008D10 80008110 8CCA0000 */ lw $t2, ($a2)
/* 008D14 80008114 00000000 */ nop
/* 008D18 80008118 01425821 */ addu $t3, $t2, $v0
/* 008D1C 8000811C 24420090 */ addiu $v0, $v0, 0x90
/* 008D20 80008120 1443FFEF */ bne $v0, $v1, .L800080E0
/* 008D24 80008124 AD600084 */ sw $zero, 0x84($t3)
/* 008D28 80008128 0C00205D */ jal func_80008174
/* 008D2C 8000812C 00000000 */ nop
/* 008D30 80008130 8FBF0014 */ lw $ra, 0x14($sp)
/* 008D34 80008134 27BD0018 */ addiu $sp, $sp, 0x18
/* 008D38 80008138 03E00008 */ jr $ra
/* 008D3C 8000813C 00000000 */ nop
@@ -0,0 +1,12 @@
glabel func_80008140
/* 008D40 80008140 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 008D44 80008144 AFBF0014 */ sw $ra, 0x14($sp)
/* 008D48 80008148 0C000638 */ jal func_800018E0
/* 008D4C 8000814C 00000000 */ nop
/* 008D50 80008150 8FBF0014 */ lw $ra, 0x14($sp)
/* 008D54 80008154 240E0001 */ li $t6, 1
/* 008D58 80008158 3C018012 */ lui $at, %hi(D_8011AC18) # $at, 0x8012
/* 008D5C 8000815C A02EAC18 */ sb $t6, %lo(D_8011AC18)($at)
/* 008D60 80008160 03E00008 */ jr $ra
/* 008D64 80008164 27BD0018 */ addiu $sp, $sp, 0x18
@@ -0,0 +1,5 @@
glabel func_80008168
/* 008D68 80008168 3C018012 */ lui $at, 0x8012
/* 008D6C 8000816C 03E00008 */ jr $ra
/* 008D70 80008170 A020AC18 */ sb $zero, -0x53e8($at)
@@ -0,0 +1,191 @@
glabel func_80008174
/* 008D74 80008174 27BDFFC0 */ addiu $sp, $sp, -0x40
/* 008D78 80008178 3C038012 */ lui $v1, %hi(D_80119C4C) # $v1, 0x8012
/* 008D7C 8000817C 3C048012 */ lui $a0, %hi(D_80119C48) # $a0, 0x8012
/* 008D80 80008180 300200FF */ andi $v0, $zero, 0xff
/* 008D84 80008184 24639C4C */ addiu $v1, %lo(D_80119C4C) # addiu $v1, $v1, -0x63b4
/* 008D88 80008188 8C849C48 */ lw $a0, %lo(D_80119C48)($a0)
/* 008D8C 8000818C 28410028 */ slti $at, $v0, 0x28
/* 008D90 80008190 AFBF003C */ sw $ra, 0x3c($sp)
/* 008D94 80008194 AFB60038 */ sw $s6, 0x38($sp)
/* 008D98 80008198 AFB50034 */ sw $s5, 0x34($sp)
/* 008D9C 8000819C AFB40030 */ sw $s4, 0x30($sp)
/* 008DA0 800081A0 AFB3002C */ sw $s3, 0x2c($sp)
/* 008DA4 800081A4 AFB20028 */ sw $s2, 0x28($sp)
/* 008DA8 800081A8 AFB10024 */ sw $s1, 0x24($sp)
/* 008DAC 800081AC AFB00020 */ sw $s0, 0x20($sp)
/* 008DB0 800081B0 E7B50018 */ swc1 $f21, 0x18($sp)
/* 008DB4 800081B4 E7B4001C */ swc1 $f20, 0x1c($sp)
/* 008DB8 800081B8 1020000E */ beqz $at, .L800081F4
/* 008DBC 800081BC A0600000 */ sb $zero, ($v1)
/* 008DC0 800081C0 3C058012 */ lui $a1, %hi(D_80119C50) # $a1, 0x8012
/* 008DC4 800081C4 24A59C50 */ addiu $a1, %lo(D_80119C50) # addiu $a1, $a1, -0x63b0
.L800081C8:
/* 008DC8 800081C8 8CAE0000 */ lw $t6, ($a1)
/* 008DCC 800081CC 00027880 */ sll $t7, $v0, 2
/* 008DD0 800081D0 01CFC021 */ addu $t8, $t6, $t7
/* 008DD4 800081D4 AF040000 */ sw $a0, ($t8)
/* 008DD8 800081D8 90790000 */ lbu $t9, ($v1)
/* 008DDC 800081DC 24840024 */ addiu $a0, $a0, 0x24
/* 008DE0 800081E0 27290001 */ addiu $t1, $t9, 1
/* 008DE4 800081E4 312200FF */ andi $v0, $t1, 0xff
/* 008DE8 800081E8 28410028 */ slti $at, $v0, 0x28
/* 008DEC 800081EC 1420FFF6 */ bnez $at, .L800081C8
/* 008DF0 800081F0 A0690000 */ sb $t1, ($v1)
.L800081F4:
/* 008DF4 800081F4 3C14800E */ lui $s4, %hi(D_800DC6E0) # $s4, 0x800e
/* 008DF8 800081F8 2694C6E0 */ addiu $s4, %lo(D_800DC6E0) # addiu $s4, $s4, -0x3920
/* 008DFC 800081FC 968B0000 */ lhu $t3, ($s4)
/* 008E00 80008200 244AFFFF */ addiu $t2, $v0, -1
/* 008E04 80008204 A06A0000 */ sb $t2, ($v1)
/* 008E08 80008208 19600014 */ blez $t3, .L8000825C
/* 008E0C 8000820C 00008825 */ move $s1, $zero
/* 008E10 80008210 3C128012 */ lui $s2, %hi(D_80119C44) # $s2, 0x8012
/* 008E14 80008214 26529C44 */ addiu $s2, %lo(D_80119C44) # addiu $s2, $s2, -0x63bc
/* 008E18 80008218 00008025 */ move $s0, $zero
.L8000821C:
/* 008E1C 8000821C 8E4C0000 */ lw $t4, ($s2)
/* 008E20 80008220 00000000 */ nop
/* 008E24 80008224 01906821 */ addu $t5, $t4, $s0
/* 008E28 80008228 8DA20000 */ lw $v0, ($t5)
/* 008E2C 8000822C 00000000 */ nop
/* 008E30 80008230 8C440018 */ lw $a0, 0x18($v0)
/* 008E34 80008234 A0400012 */ sb $zero, 0x12($v0)
/* 008E38 80008238 10800003 */ beqz $a0, .L80008248
/* 008E3C 8000823C 00000000 */ nop
/* 008E40 80008240 0C001223 */ jal func_8000488C
/* 008E44 80008244 00000000 */ nop
.L80008248:
/* 008E48 80008248 968E0000 */ lhu $t6, ($s4)
/* 008E4C 8000824C 26310001 */ addiu $s1, $s1, 1
/* 008E50 80008250 022E082A */ slt $at, $s1, $t6
/* 008E54 80008254 1420FFF1 */ bnez $at, .L8000821C
/* 008E58 80008258 26100004 */ addiu $s0, $s0, 4
.L8000825C:
/* 008E5C 8000825C A6800000 */ sh $zero, ($s4)
/* 008E60 80008260 3C01800E */ lui $at, %hi(D_800E4F10) # $at, 0x800e
/* 008E64 80008264 3C118012 */ lui $s1, %hi(D_80119C58) # $s1, 0x8012
/* 008E68 80008268 3C128012 */ lui $s2, %hi(D_80119C5C) # $s2, 0x8012
/* 008E6C 8000826C 3C138012 */ lui $s3, %hi(D_80119C60) # $s3, 0x8012
/* 008E70 80008270 3C158012 */ lui $s5, %hi(D_8011A6E0) # $s5, 0x8012
/* 008E74 80008274 C4344F10 */ lwc1 $f20, %lo(D_800E4F10)($at)
/* 008E78 80008278 26B5A6E0 */ addiu $s5, %lo(D_8011A6E0) # addiu $s5, $s5, -0x5920
/* 008E7C 8000827C 26739C60 */ addiu $s3, %lo(D_80119C60) # addiu $s3, $s3, -0x63a0
/* 008E80 80008280 26529C5C */ addiu $s2, %lo(D_80119C5C) # addiu $s2, $s2, -0x63a4
/* 008E84 80008284 26319C58 */ addiu $s1, %lo(D_80119C58) # addiu $s1, $s1, -0x63a8
/* 008E88 80008288 2414FFFF */ li $s4, -1
/* 008E8C 8000828C 24160001 */ li $s6, 1
/* 008E90 80008290 2410001E */ li $s0, 30
.L80008294:
/* 008E94 80008294 8E240178 */ lw $a0, 0x178($s1)
/* 008E98 80008298 AE20016C */ sw $zero, 0x16c($s1)
/* 008E9C 8000829C 1080000E */ beqz $a0, .L800082D8
/* 008EA0 800082A0 00000000 */ nop
/* 008EA4 800082A4 92220000 */ lbu $v0, ($s1)
/* 008EA8 800082A8 00000000 */ nop
/* 008EAC 800082AC 14400005 */ bnez $v0, .L800082C4
/* 008EB0 800082B0 00000000 */ nop
/* 008EB4 800082B4 0C001223 */ jal func_8000488C
/* 008EB8 800082B8 00000000 */ nop
/* 008EBC 800082BC 10000006 */ b .L800082D8
/* 008EC0 800082C0 AE200178 */ sw $zero, 0x178($s1)
.L800082C4:
/* 008EC4 800082C4 16C20003 */ bne $s6, $v0, .L800082D4
/* 008EC8 800082C8 00000000 */ nop
/* 008ECC 800082CC 0C000638 */ jal func_800018E0
/* 008ED0 800082D0 00000000 */ nop
.L800082D4:
/* 008ED4 800082D4 AE200178 */ sw $zero, 0x178($s1)
.L800082D8:
/* 008ED8 800082D8 A234017C */ sb $s4, 0x17c($s1)
/* 008EDC 800082DC E6540000 */ swc1 $f20, ($s2)
/* 008EE0 800082E0 02601025 */ move $v0, $s3
/* 008EE4 800082E4 E6740000 */ swc1 $f20, ($s3)
/* 008EE8 800082E8 E4540010 */ swc1 $f20, 0x10($v0)
/* 008EEC 800082EC E454000C */ swc1 $f20, 0xc($v0)
/* 008EF0 800082F0 E4540008 */ swc1 $f20, 8($v0)
/* 008EF4 800082F4 E4540004 */ swc1 $f20, 4($v0)
/* 008EF8 800082F8 24420014 */ addiu $v0, $v0, 0x14
/* 008EFC 800082FC 24030002 */ li $v1, 2
.L80008300:
/* 008F00 80008300 24630004 */ addiu $v1, $v1, 4
/* 008F04 80008304 E454000C */ swc1 $f20, 0xc($v0)
/* 008F08 80008308 E4540010 */ swc1 $f20, 0x10($v0)
/* 008F0C 8000830C E4540014 */ swc1 $f20, 0x14($v0)
/* 008F10 80008310 E4540018 */ swc1 $f20, 0x18($v0)
/* 008F14 80008314 E454001C */ swc1 $f20, 0x1c($v0)
/* 008F18 80008318 E4540020 */ swc1 $f20, 0x20($v0)
/* 008F1C 8000831C E4540024 */ swc1 $f20, 0x24($v0)
/* 008F20 80008320 E4540028 */ swc1 $f20, 0x28($v0)
/* 008F24 80008324 E454002C */ swc1 $f20, 0x2c($v0)
/* 008F28 80008328 24420030 */ addiu $v0, $v0, 0x30
/* 008F2C 8000832C E454FFD0 */ swc1 $f20, -0x30($v0)
/* 008F30 80008330 E454FFD4 */ swc1 $f20, -0x2c($v0)
/* 008F34 80008334 1470FFF2 */ bne $v1, $s0, .L80008300
/* 008F38 80008338 E454FFD8 */ swc1 $f20, -0x28($v0)
/* 008F3C 8000833C 26730180 */ addiu $s3, $s3, 0x180
/* 008F40 80008340 0275082B */ sltu $at, $s3, $s5
/* 008F44 80008344 26310180 */ addiu $s1, $s1, 0x180
/* 008F48 80008348 1420FFD2 */ bnez $at, .L80008294
/* 008F4C 8000834C 26520180 */ addiu $s2, $s2, 0x180
/* 008F50 80008350 3C058012 */ lui $a1, %hi(D_8011A6D8) # $a1, 0x8012
/* 008F54 80008354 3C068012 */ lui $a2, %hi(D_8011A6DC) # $a2, 0x8012
/* 008F58 80008358 3C078012 */ lui $a3, %hi(D_8011A6E0) # $a3, 0x8012
/* 008F5C 8000835C 3C088012 */ lui $t0, %hi(D_8011AC20) # $t0, 0x8012
/* 008F60 80008360 44800000 */ mtc1 $zero, $f0
/* 008F64 80008364 2508AC20 */ addiu $t0, %lo(D_8011AC20) # addiu $t0, $t0, -0x53e0
/* 008F68 80008368 24E7A6E0 */ addiu $a3, %lo(D_8011A6E0) # addiu $a3, $a3, -0x5920
/* 008F6C 8000836C 24C6A6DC */ addiu $a2, %lo(D_8011A6DC) # addiu $a2, $a2, -0x5924
/* 008F70 80008370 24A5A6D8 */ addiu $a1, %lo(D_8011A6D8) # addiu $a1, $a1, -0x5928
/* 008F74 80008374 2404000F */ li $a0, 15
.L80008378:
/* 008F78 80008378 A0B400B8 */ sb $s4, 0xb8($a1)
/* 008F7C 8000837C A0A00000 */ sb $zero, ($a1)
/* 008F80 80008380 E4A000BC */ swc1 $f0, 0xbc($a1)
/* 008F84 80008384 E4D40000 */ swc1 $f20, ($a2)
/* 008F88 80008388 00E01025 */ move $v0, $a3
/* 008F8C 8000838C E4F40000 */ swc1 $f20, ($a3)
/* 008F90 80008390 E454001C */ swc1 $f20, 0x1c($v0)
/* 008F94 80008394 E4540018 */ swc1 $f20, 0x18($v0)
/* 008F98 80008398 E4540014 */ swc1 $f20, 0x14($v0)
/* 008F9C 8000839C E4540010 */ swc1 $f20, 0x10($v0)
/* 008FA0 800083A0 E454000C */ swc1 $f20, 0xc($v0)
/* 008FA4 800083A4 E4540008 */ swc1 $f20, 8($v0)
/* 008FA8 800083A8 E4540004 */ swc1 $f20, 4($v0)
/* 008FAC 800083AC 24420020 */ addiu $v0, $v0, 0x20
/* 008FB0 800083B0 24030003 */ li $v1, 3
.L800083B4:
/* 008FB4 800083B4 24630004 */ addiu $v1, $v1, 4
/* 008FB8 800083B8 E454000C */ swc1 $f20, 0xc($v0)
/* 008FBC 800083BC E4540010 */ swc1 $f20, 0x10($v0)
/* 008FC0 800083C0 E4540014 */ swc1 $f20, 0x14($v0)
/* 008FC4 800083C4 E4540018 */ swc1 $f20, 0x18($v0)
/* 008FC8 800083C8 E454001C */ swc1 $f20, 0x1c($v0)
/* 008FCC 800083CC E4540020 */ swc1 $f20, 0x20($v0)
/* 008FD0 800083D0 E4540024 */ swc1 $f20, 0x24($v0)
/* 008FD4 800083D4 E4540028 */ swc1 $f20, 0x28($v0)
/* 008FD8 800083D8 E454002C */ swc1 $f20, 0x2c($v0)
/* 008FDC 800083DC 24420030 */ addiu $v0, $v0, 0x30
/* 008FE0 800083E0 E454FFD0 */ swc1 $f20, -0x30($v0)
/* 008FE4 800083E4 E454FFD4 */ swc1 $f20, -0x2c($v0)
/* 008FE8 800083E8 1464FFF2 */ bne $v1, $a0, .L800083B4
/* 008FEC 800083EC E454FFD8 */ swc1 $f20, -0x28($v0)
/* 008FF0 800083F0 24E700C0 */ addiu $a3, $a3, 0xc0
/* 008FF4 800083F4 24A500C0 */ addiu $a1, $a1, 0xc0
/* 008FF8 800083F8 14E8FFDF */ bne $a3, $t0, .L80008378
/* 008FFC 800083FC 24C600C0 */ addiu $a2, $a2, 0xc0
/* 009000 80008400 8FBF003C */ lw $ra, 0x3c($sp)
/* 009004 80008404 3C018012 */ lui $at, %hi(D_8011AC18) # $at, 0x8012
/* 009008 80008408 C7B50018 */ lwc1 $f21, 0x18($sp)
/* 00900C 8000840C C7B4001C */ lwc1 $f20, 0x1c($sp)
/* 009010 80008410 8FB00020 */ lw $s0, 0x20($sp)
/* 009014 80008414 8FB10024 */ lw $s1, 0x24($sp)
/* 009018 80008418 8FB20028 */ lw $s2, 0x28($sp)
/* 00901C 8000841C 8FB3002C */ lw $s3, 0x2c($sp)
/* 009020 80008420 8FB40030 */ lw $s4, 0x30($sp)
/* 009024 80008424 8FB50034 */ lw $s5, 0x34($sp)
/* 009028 80008428 8FB60038 */ lw $s6, 0x38($sp)
/* 00902C 8000842C A020AC18 */ sb $zero, %lo(D_8011AC18)($at)
/* 009030 80008430 03E00008 */ jr $ra
/* 009034 80008434 27BD0040 */ addiu $sp, $sp, 0x40
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,133 @@
glabel func_800090C0
/* 009CC0 800090C0 460E7482 */ mul.s $f18, $f14, $f14
/* 009CC4 800090C4 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 009CC8 800090C8 E7AC0028 */ swc1 $f12, 0x28($sp)
/* 009CCC 800090CC C7B00028 */ lwc1 $f16, 0x28($sp)
/* 009CD0 800090D0 AFBF0014 */ sw $ra, 0x14($sp)
/* 009CD4 800090D4 46108402 */ mul.s $f16, $f16, $f16
/* 009CD8 800090D8 AFA60030 */ sw $a2, 0x30($sp)
/* 009CDC 800090DC E7AE002C */ swc1 $f14, 0x2c($sp)
/* 009CE0 800090E0 0C0326B4 */ jal sqrtf
/* 009CE4 800090E4 46128300 */ add.s $f12, $f16, $f18
/* 009CE8 800090E8 C7AE002C */ lwc1 $f14, 0x2c($sp)
/* 009CEC 800090EC C7AC0028 */ lwc1 $f12, 0x28($sp)
/* 009CF0 800090F0 0C01C1D4 */ jal func_80070750
/* 009CF4 800090F4 E7A0001C */ swc1 $f0, 0x1c($sp)
/* 009CF8 800090F8 8FA60030 */ lw $a2, 0x30($sp)
/* 009CFC 800090FC 340EFFFF */ li $t6, 65535
/* 009D00 80009100 01C21823 */ subu $v1, $t6, $v0
/* 009D04 80009104 C7A2001C */ lwc1 $f2, 0x1c($sp)
/* 009D08 80009108 0066082A */ slt $at, $v1, $a2
/* 009D0C 8000910C 1020002F */ beqz $at, .L800091CC
/* 009D10 80009110 00602825 */ move $a1, $v1
/* 009D14 80009114 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 009D18 80009118 44815000 */ mtc1 $at, $f10
/* 009D1C 8000911C 00C52023 */ subu $a0, $a2, $a1
/* 009D20 80009120 460A103E */ c.le.s $f2, $f10
/* 009D24 80009124 00044C00 */ sll $t1, $a0, 0x10
/* 009D28 80009128 4500001F */ bc1f .L800091A8
/* 009D2C 8000912C 00000000 */ nop
/* 009D30 80009130 00C32023 */ subu $a0, $a2, $v1
/* 009D34 80009134 00047C00 */ sll $t7, $a0, 0x10
/* 009D38 80009138 000F2403 */ sra $a0, $t7, 0x10
/* 009D3C 8000913C 0C01C20C */ jal func_80070830
/* 009D40 80009140 E7A2001C */ swc1 $f2, 0x1c($sp)
/* 009D44 80009144 C7A2001C */ lwc1 $f2, 0x1c($sp)
/* 009D48 80009148 04410003 */ bgez $v0, .L80009158
/* 009D4C 8000914C 0002CA83 */ sra $t9, $v0, 0xa
/* 009D50 80009150 244103FF */ addiu $at, $v0, 0x3ff
/* 009D54 80009154 0001CA83 */ sra $t9, $at, 0xa
.L80009158:
/* 009D58 80009158 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 009D5C 8000915C 44812000 */ mtc1 $at, $f4
/* 009D60 80009160 44998000 */ mtc1 $t9, $f16
/* 009D64 80009164 46041182 */ mul.s $f6, $f2, $f4
/* 009D68 80009168 3C014280 */ li $at, 0x42800000 # 64.000000
/* 009D6C 8000916C 44815000 */ mtc1 $at, $f10
/* 009D70 80009170 468084A0 */ cvt.s.w $f18, $f16
/* 009D74 80009174 46069202 */ mul.s $f8, $f18, $f6
/* 009D78 80009178 46085401 */ sub.s $f16, $f10, $f8
/* 009D7C 8000917C 4448F800 */ cfc1 $t0, $31
/* 009D80 80009180 00000000 */ nop
/* 009D84 80009184 35010003 */ ori $at, $t0, 3
/* 009D88 80009188 38210002 */ xori $at, $at, 2
/* 009D8C 8000918C 44C1F800 */ ctc1 $at, $31
/* 009D90 80009190 00000000 */ nop
/* 009D94 80009194 46008124 */ cvt.w.s $f4, $f16
/* 009D98 80009198 44032000 */ mfc1 $v1, $f4
/* 009D9C 8000919C 44C8F800 */ ctc1 $t0, $31
/* 009DA0 800091A0 10000036 */ b .L8000927C
/* 009DA4 800091A4 00000000 */ nop
.L800091A8:
/* 009DA8 800091A8 0C01C224 */ jal func_80070890
/* 009DAC 800091AC 00092403 */ sra $a0, $t1, 0x10
/* 009DB0 800091B0 04410003 */ bgez $v0, .L800091C0
/* 009DB4 800091B4 00025A83 */ sra $t3, $v0, 0xa
/* 009DB8 800091B8 244103FF */ addiu $at, $v0, 0x3ff
/* 009DBC 800091BC 00015A83 */ sra $t3, $at, 0xa
.L800091C0:
/* 009DC0 800091C0 240C0040 */ li $t4, 64
/* 009DC4 800091C4 1000002D */ b .L8000927C
/* 009DC8 800091C8 018B1823 */ subu $v1, $t4, $t3
.L800091CC:
/* 009DCC 800091CC 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 009DD0 800091D0 44819000 */ mtc1 $at, $f18
/* 009DD4 800091D4 00A62023 */ subu $a0, $a1, $a2
/* 009DD8 800091D8 4612103E */ c.le.s $f2, $f18
/* 009DDC 800091DC 0004CC00 */ sll $t9, $a0, 0x10
/* 009DE0 800091E0 4500001F */ bc1f .L80009260
/* 009DE4 800091E4 00000000 */ nop
/* 009DE8 800091E8 00A62023 */ subu $a0, $a1, $a2
/* 009DEC 800091EC 00046C00 */ sll $t5, $a0, 0x10
/* 009DF0 800091F0 000D2403 */ sra $a0, $t5, 0x10
/* 009DF4 800091F4 0C01C20C */ jal func_80070830
/* 009DF8 800091F8 E7A2001C */ swc1 $f2, 0x1c($sp)
/* 009DFC 800091FC C7A2001C */ lwc1 $f2, 0x1c($sp)
/* 009E00 80009200 04410003 */ bgez $v0, .L80009210
/* 009E04 80009204 00027A83 */ sra $t7, $v0, 0xa
/* 009E08 80009208 244103FF */ addiu $at, $v0, 0x3ff
/* 009E0C 8000920C 00017A83 */ sra $t7, $at, 0xa
.L80009210:
/* 009E10 80009210 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 009E14 80009214 44814000 */ mtc1 $at, $f8
/* 009E18 80009218 448F3000 */ mtc1 $t7, $f6
/* 009E1C 8000921C 46081402 */ mul.s $f16, $f2, $f8
/* 009E20 80009220 3C014280 */ li $at, 0x42800000 # 64.000000
/* 009E24 80009224 44819000 */ mtc1 $at, $f18
/* 009E28 80009228 468032A0 */ cvt.s.w $f10, $f6
/* 009E2C 8000922C 46105102 */ mul.s $f4, $f10, $f16
/* 009E30 80009230 46122180 */ add.s $f6, $f4, $f18
/* 009E34 80009234 4458F800 */ cfc1 $t8, $31
/* 009E38 80009238 00000000 */ nop
/* 009E3C 8000923C 37010003 */ ori $at, $t8, 3
/* 009E40 80009240 38210002 */ xori $at, $at, 2
/* 009E44 80009244 44C1F800 */ ctc1 $at, $31
/* 009E48 80009248 00000000 */ nop
/* 009E4C 8000924C 46003224 */ cvt.w.s $f8, $f6
/* 009E50 80009250 44034000 */ mfc1 $v1, $f8
/* 009E54 80009254 44D8F800 */ ctc1 $t8, $31
/* 009E58 80009258 10000008 */ b .L8000927C
/* 009E5C 8000925C 00000000 */ nop
.L80009260:
/* 009E60 80009260 0C01C224 */ jal func_80070890
/* 009E64 80009264 00192403 */ sra $a0, $t9, 0x10
/* 009E68 80009268 04410003 */ bgez $v0, .L80009278
/* 009E6C 8000926C 00021A83 */ sra $v1, $v0, 0xa
/* 009E70 80009270 244103FF */ addiu $at, $v0, 0x3ff
/* 009E74 80009274 00011A83 */ sra $v1, $at, 0xa
.L80009278:
/* 009E78 80009278 24630040 */ addiu $v1, $v1, 0x40
.L8000927C:
/* 009E7C 8000927C 0C0270C3 */ jal func_8009C30C
/* 009E80 80009280 AFA30020 */ sw $v1, 0x20($sp)
/* 009E84 80009284 8FA30020 */ lw $v1, 0x20($sp)
/* 009E88 80009288 30490004 */ andi $t1, $v0, 4
/* 009E8C 8000928C 11200002 */ beqz $t1, .L80009298
/* 009E90 80009290 240A0080 */ li $t2, 128
/* 009E94 80009294 01431823 */ subu $v1, $t2, $v1
.L80009298:
/* 009E98 80009298 8FBF0014 */ lw $ra, 0x14($sp)
/* 009E9C 8000929C 27BD0028 */ addiu $sp, $sp, 0x28
/* 009EA0 800092A0 03E00008 */ jr $ra
/* 009EA4 800092A4 00601025 */ move $v0, $v1
@@ -0,0 +1,179 @@
glabel func_800092A8
/* 009EA8 800092A8 27BDFF98 */ addiu $sp, $sp, -0x68
/* 009EAC 800092AC AFBF002C */ sw $ra, 0x2c($sp)
/* 009EB0 800092B0 E7B90020 */ swc1 $f25, 0x20($sp)
/* 009EB4 800092B4 E7B80024 */ swc1 $f24, 0x24($sp)
/* 009EB8 800092B8 E7B70018 */ swc1 $f23, 0x18($sp)
/* 009EBC 800092BC E7B6001C */ swc1 $f22, 0x1c($sp)
/* 009EC0 800092C0 E7B50010 */ swc1 $f21, 0x10($sp)
/* 009EC4 800092C4 E7B40014 */ swc1 $f20, 0x14($sp)
/* 009EC8 800092C8 E7AC0068 */ swc1 $f12, 0x68($sp)
/* 009ECC 800092CC E7AE006C */ swc1 $f14, 0x6c($sp)
/* 009ED0 800092D0 AFA60070 */ sw $a2, 0x70($sp)
/* 009ED4 800092D4 C4E4000C */ lwc1 $f4, 0xc($a3)
/* 009ED8 800092D8 C4F40000 */ lwc1 $f20, ($a3)
/* 009EDC 800092DC C4F60004 */ lwc1 $f22, 4($a3)
/* 009EE0 800092E0 C4F80008 */ lwc1 $f24, 8($a3)
/* 009EE4 800092E4 E7A4004C */ swc1 $f4, 0x4c($sp)
/* 009EE8 800092E8 C4E60010 */ lwc1 $f6, 0x10($a3)
/* 009EEC 800092EC C7AA004C */ lwc1 $f10, 0x4c($sp)
/* 009EF0 800092F0 E7A60048 */ swc1 $f6, 0x48($sp)
/* 009EF4 800092F4 C4E80014 */ lwc1 $f8, 0x14($a3)
/* 009EF8 800092F8 C7A60048 */ lwc1 $f6, 0x48($sp)
/* 009EFC 800092FC 46145081 */ sub.s $f2, $f10, $f20
/* 009F00 80009300 E7A80044 */ swc1 $f8, 0x44($sp)
/* 009F04 80009304 C7AA0044 */ lwc1 $f10, 0x44($sp)
/* 009F08 80009308 46163201 */ sub.s $f8, $f6, $f22
/* 009F0C 8000930C 44800800 */ mtc1 $zero, $f1
/* 009F10 80009310 44800000 */ mtc1 $zero, $f0
/* 009F14 80009314 46185181 */ sub.s $f6, $f10, $f24
/* 009F18 80009318 E7A20038 */ swc1 $f2, 0x38($sp)
/* 009F1C 8000931C 460012A1 */ cvt.d.s $f10, $f2
/* 009F20 80009320 462A0032 */ c.eq.d $f0, $f10
/* 009F24 80009324 E7A80034 */ swc1 $f8, 0x34($sp)
/* 009F28 80009328 46004406 */ mov.s $f16, $f8
/* 009F2C 8000932C E7A60030 */ swc1 $f6, 0x30($sp)
/* 009F30 80009330 4500000E */ bc1f .L8000936C
/* 009F34 80009334 46003486 */ mov.s $f18, $f6
/* 009F38 80009338 46004121 */ cvt.d.s $f4, $f8
/* 009F3C 8000933C 46240032 */ c.eq.d $f0, $f4
/* 009F40 80009340 00000000 */ nop
/* 009F44 80009344 45000009 */ bc1f .L8000936C
/* 009F48 80009348 00000000 */ nop
/* 009F4C 8000934C 460032A1 */ cvt.d.s $f10, $f6
/* 009F50 80009350 462A0032 */ c.eq.d $f0, $f10
/* 009F54 80009354 00000000 */ nop
/* 009F58 80009358 45000004 */ bc1f .L8000936C
/* 009F5C 8000935C 00000000 */ nop
/* 009F60 80009360 44800000 */ mtc1 $zero, $f0
/* 009F64 80009364 10000015 */ b .L800093BC
/* 009F68 80009368 44802000 */ mtc1 $zero, $f4
.L8000936C:
/* 009F6C 8000936C C7A80068 */ lwc1 $f8, 0x68($sp)
/* 009F70 80009370 C7AA006C */ lwc1 $f10, 0x6c($sp)
/* 009F74 80009374 46144101 */ sub.s $f4, $f8, $f20
/* 009F78 80009378 46022182 */ mul.s $f6, $f4, $f2
/* 009F7C 8000937C 46165201 */ sub.s $f8, $f10, $f22
/* 009F80 80009380 46104102 */ mul.s $f4, $f8, $f16
/* 009F84 80009384 C7A80070 */ lwc1 $f8, 0x70($sp)
/* 009F88 80009388 46043280 */ add.s $f10, $f6, $f4
/* 009F8C 8000938C 46184181 */ sub.s $f6, $f8, $f24
/* 009F90 80009390 46123102 */ mul.s $f4, $f6, $f18
/* 009F94 80009394 00000000 */ nop
/* 009F98 80009398 46021182 */ mul.s $f6, $f2, $f2
/* 009F9C 8000939C 46045200 */ add.s $f8, $f10, $f4
/* 009FA0 800093A0 46108282 */ mul.s $f10, $f16, $f16
/* 009FA4 800093A4 460A3100 */ add.s $f4, $f6, $f10
/* 009FA8 800093A8 46129182 */ mul.s $f6, $f18, $f18
/* 009FAC 800093AC 46062280 */ add.s $f10, $f4, $f6
/* 009FB0 800093B0 00000000 */ nop
/* 009FB4 800093B4 460A4003 */ div.s $f0, $f8, $f10
/* 009FB8 800093B8 44802000 */ mtc1 $zero, $f4
.L800093BC:
/* 009FBC 800093BC 8FA20078 */ lw $v0, 0x78($sp)
/* 009FC0 800093C0 4604003C */ c.lt.s $f0, $f4
/* 009FC4 800093C4 8FA3007C */ lw $v1, 0x7c($sp)
/* 009FC8 800093C8 45000014 */ bc1f .L8000941C
/* 009FCC 800093CC 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 009FD0 800093D0 E4540000 */ swc1 $f20, ($v0)
/* 009FD4 800093D4 E4760000 */ swc1 $f22, ($v1)
/* 009FD8 800093D8 8FAE0080 */ lw $t6, 0x80($sp)
/* 009FDC 800093DC 00000000 */ nop
/* 009FE0 800093E0 E5D80000 */ swc1 $f24, ($t6)
/* 009FE4 800093E4 C7A60068 */ lwc1 $f6, 0x68($sp)
/* 009FE8 800093E8 C7A8006C */ lwc1 $f8, 0x6c($sp)
/* 009FEC 800093EC 4606A001 */ sub.s $f0, $f20, $f6
/* 009FF0 800093F0 C7AA0070 */ lwc1 $f10, 0x70($sp)
/* 009FF4 800093F4 46000102 */ mul.s $f4, $f0, $f0
/* 009FF8 800093F8 4608B081 */ sub.s $f2, $f22, $f8
/* 009FFC 800093FC 46021182 */ mul.s $f6, $f2, $f2
/* 00A000 80009400 460AC381 */ sub.s $f14, $f24, $f10
/* 00A004 80009404 460E7282 */ mul.s $f10, $f14, $f14
/* 00A008 80009408 46062200 */ add.s $f8, $f4, $f6
/* 00A00C 8000940C 0C0326B4 */ jal sqrtf
/* 00A010 80009410 460A4300 */ add.s $f12, $f8, $f10
/* 00A014 80009414 10000041 */ b .L8000951C
/* 00A018 80009418 4459F800 */ cfc1 $t9, $31
.L8000941C:
/* 00A01C 8000941C 44812000 */ mtc1 $at, $f4
/* 00A020 80009420 8FA20078 */ lw $v0, 0x78($sp)
/* 00A024 80009424 4600203C */ c.lt.s $f4, $f0
/* 00A028 80009428 C7A80038 */ lwc1 $f8, 0x38($sp)
/* 00A02C 8000942C 4500001C */ bc1f .L800094A0
/* 00A030 80009430 00000000 */ nop
/* 00A034 80009434 C7A6004C */ lwc1 $f6, 0x4c($sp)
/* 00A038 80009438 8FA3007C */ lw $v1, 0x7c($sp)
/* 00A03C 8000943C E4460000 */ swc1 $f6, ($v0)
/* 00A040 80009440 C7A80048 */ lwc1 $f8, 0x48($sp)
/* 00A044 80009444 00000000 */ nop
/* 00A048 80009448 E4680000 */ swc1 $f8, ($v1)
/* 00A04C 8000944C 8FAF0080 */ lw $t7, 0x80($sp)
/* 00A050 80009450 C7AA0044 */ lwc1 $f10, 0x44($sp)
/* 00A054 80009454 00000000 */ nop
/* 00A058 80009458 E5EA0000 */ swc1 $f10, ($t7)
/* 00A05C 8000945C C7A60068 */ lwc1 $f6, 0x68($sp)
/* 00A060 80009460 C7A4004C */ lwc1 $f4, 0x4c($sp)
/* 00A064 80009464 C7A80048 */ lwc1 $f8, 0x48($sp)
/* 00A068 80009468 46062001 */ sub.s $f0, $f4, $f6
/* 00A06C 8000946C C7A4006C */ lwc1 $f4, 0x6c($sp)
/* 00A070 80009470 C7A60070 */ lwc1 $f6, 0x70($sp)
/* 00A074 80009474 46044081 */ sub.s $f2, $f8, $f4
/* 00A078 80009478 46000202 */ mul.s $f8, $f0, $f0
/* 00A07C 8000947C 46065381 */ sub.s $f14, $f10, $f6
/* 00A080 80009480 46021102 */ mul.s $f4, $f2, $f2
/* 00A084 80009484 00000000 */ nop
/* 00A088 80009488 460E7182 */ mul.s $f6, $f14, $f14
/* 00A08C 8000948C 46044280 */ add.s $f10, $f8, $f4
/* 00A090 80009490 0C0326B4 */ jal sqrtf
/* 00A094 80009494 46065300 */ add.s $f12, $f10, $f6
/* 00A098 80009498 10000020 */ b .L8000951C
/* 00A09C 8000949C 4459F800 */ cfc1 $t9, $31
.L800094A0:
/* 00A0A0 800094A0 46080102 */ mul.s $f4, $f0, $f8
/* 00A0A4 800094A4 8FA20078 */ lw $v0, 0x78($sp)
/* 00A0A8 800094A8 8FA3007C */ lw $v1, 0x7c($sp)
/* 00A0AC 800094AC 46142280 */ add.s $f10, $f4, $f20
/* 00A0B0 800094B0 E44A0000 */ swc1 $f10, ($v0)
/* 00A0B4 800094B4 C7A60034 */ lwc1 $f6, 0x34($sp)
/* 00A0B8 800094B8 00000000 */ nop
/* 00A0BC 800094BC 46060202 */ mul.s $f8, $f0, $f6
/* 00A0C0 800094C0 46164100 */ add.s $f4, $f8, $f22
/* 00A0C4 800094C4 E4640000 */ swc1 $f4, ($v1)
/* 00A0C8 800094C8 C7AA0030 */ lwc1 $f10, 0x30($sp)
/* 00A0CC 800094CC 8FB80080 */ lw $t8, 0x80($sp)
/* 00A0D0 800094D0 460A0182 */ mul.s $f6, $f0, $f10
/* 00A0D4 800094D4 46183400 */ add.s $f16, $f6, $f24
/* 00A0D8 800094D8 E7100000 */ swc1 $f16, ($t8)
/* 00A0DC 800094DC C7AA0068 */ lwc1 $f10, 0x68($sp)
/* 00A0E0 800094E0 C7A80070 */ lwc1 $f8, 0x70($sp)
/* 00A0E4 800094E4 C4440000 */ lwc1 $f4, ($v0)
/* 00A0E8 800094E8 46088481 */ sub.s $f18, $f16, $f8
/* 00A0EC 800094EC C7A8006C */ lwc1 $f8, 0x6c($sp)
/* 00A0F0 800094F0 460A2081 */ sub.s $f2, $f4, $f10
/* 00A0F4 800094F4 C4660000 */ lwc1 $f6, ($v1)
/* 00A0F8 800094F8 46021102 */ mul.s $f4, $f2, $f2
/* 00A0FC 800094FC 46083381 */ sub.s $f14, $f6, $f8
/* 00A100 80009500 460E7282 */ mul.s $f10, $f14, $f14
/* 00A104 80009504 00000000 */ nop
/* 00A108 80009508 46129202 */ mul.s $f8, $f18, $f18
/* 00A10C 8000950C 460A2180 */ add.s $f6, $f4, $f10
/* 00A110 80009510 0C0326B4 */ jal sqrtf
/* 00A114 80009514 46064300 */ add.s $f12, $f8, $f6
/* 00A118 80009518 4459F800 */ cfc1 $t9, $31
.L8000951C:
/* 00A11C 8000951C 8FBF002C */ lw $ra, 0x2c($sp)
/* 00A120 80009520 37210003 */ ori $at, $t9, 3
/* 00A124 80009524 38210002 */ xori $at, $at, 2
/* 00A128 80009528 44C1F800 */ ctc1 $at, $31
/* 00A12C 8000952C C7B50010 */ lwc1 $f21, 0x10($sp)
/* 00A130 80009530 46000124 */ cvt.w.s $f4, $f0
/* 00A134 80009534 C7B40014 */ lwc1 $f20, 0x14($sp)
/* 00A138 80009538 44022000 */ mfc1 $v0, $f4
/* 00A13C 8000953C C7B70018 */ lwc1 $f23, 0x18($sp)
/* 00A140 80009540 C7B6001C */ lwc1 $f22, 0x1c($sp)
/* 00A144 80009544 C7B90020 */ lwc1 $f25, 0x20($sp)
/* 00A148 80009548 C7B80024 */ lwc1 $f24, 0x24($sp)
/* 00A14C 8000954C 44D9F800 */ ctc1 $t9, $31
/* 00A150 80009550 03E00008 */ jr $ra
/* 00A154 80009554 27BD0068 */ addiu $sp, $sp, 0x68
@@ -0,0 +1,38 @@
glabel func_80009558
/* 00A158 80009558 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 00A15C 8000955C AFA40038 */ sw $a0, 0x38($sp)
/* 00A160 80009560 97AF003A */ lhu $t7, 0x3a($sp)
/* 00A164 80009564 3C0E8012 */ lui $t6, %hi(D_80119C40) # $t6, 0x8012
/* 00A168 80009568 000FC080 */ sll $t8, $t7, 2
/* 00A16C 8000956C 8DCE9C40 */ lw $t6, %lo(D_80119C40)($t6)
/* 00A170 80009570 030FC021 */ addu $t8, $t8, $t7
/* 00A174 80009574 0018C040 */ sll $t8, $t8, 1
/* 00A178 80009578 93B9004B */ lbu $t9, 0x4b($sp)
/* 00A17C 8000957C AFBF0034 */ sw $ra, 0x34($sp)
/* 00A180 80009580 AFA70044 */ sw $a3, 0x44($sp)
/* 00A184 80009584 01D81021 */ addu $v0, $t6, $t8
/* 00A188 80009588 94440000 */ lhu $a0, ($v0)
/* 00A18C 8000958C AFB90010 */ sw $t9, 0x10($sp)
/* 00A190 80009590 90480003 */ lbu $t0, 3($v0)
/* 00A194 80009594 44856000 */ mtc1 $a1, $f12
/* 00A198 80009598 AFA80014 */ sw $t0, 0x14($sp)
/* 00A19C 8000959C 90490002 */ lbu $t1, 2($v0)
/* 00A1A0 800095A0 44867000 */ mtc1 $a2, $f14
/* 00A1A4 800095A4 AFA90018 */ sw $t1, 0x18($sp)
/* 00A1A8 800095A8 944A0006 */ lhu $t2, 6($v0)
/* 00A1AC 800095AC AFA00020 */ sw $zero, 0x20($sp)
/* 00A1B0 800095B0 AFAA001C */ sw $t2, 0x1c($sp)
/* 00A1B4 800095B4 904B0004 */ lbu $t3, 4($v0)
/* 00A1B8 800095B8 8FAD004C */ lw $t5, 0x4c($sp)
/* 00A1BC 800095BC AFAB0024 */ sw $t3, 0x24($sp)
/* 00A1C0 800095C0 904C0008 */ lbu $t4, 8($v0)
/* 00A1C4 800095C4 44056000 */ mfc1 $a1, $f12
/* 00A1C8 800095C8 44067000 */ mfc1 $a2, $f14
/* 00A1CC 800095CC AFAD002C */ sw $t5, 0x2c($sp)
/* 00A1D0 800095D0 0C0025D3 */ jal func_8000974C
/* 00A1D4 800095D4 AFAC0028 */ sw $t4, 0x28($sp)
/* 00A1D8 800095D8 8FBF0034 */ lw $ra, 0x34($sp)
/* 00A1DC 800095DC 27BD0038 */ addiu $sp, $sp, 0x38
/* 00A1E0 800095E0 03E00008 */ jr $ra
/* 00A1E4 800095E4 00000000 */ nop
@@ -0,0 +1,65 @@
glabel func_800095E8
/* 00A1E8 800095E8 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 00A1EC 800095EC 4449F800 */ cfc1 $t1, $31
/* 00A1F0 800095F0 240A0001 */ li $t2, 1
/* 00A1F4 800095F4 44CAF800 */ ctc1 $t2, $31
/* 00A1F8 800095F8 C7A40050 */ lwc1 $f4, 0x50($sp)
/* 00A1FC 800095FC 44856000 */ mtc1 $a1, $f12
/* 00A200 80009600 460021A4 */ cvt.w.s $f6, $f4
/* 00A204 80009604 44867000 */ mtc1 $a2, $f14
/* 00A208 80009608 444AF800 */ cfc1 $t2, $31
/* 00A20C 8000960C 93AF004B */ lbu $t7, 0x4b($sp)
/* 00A210 80009610 93B9004F */ lbu $t9, 0x4f($sp)
/* 00A214 80009614 AFA40038 */ sw $a0, 0x38($sp)
/* 00A218 80009618 308EFFFF */ andi $t6, $a0, 0xffff
/* 00A21C 8000961C 24180064 */ li $t8, 100
/* 00A220 80009620 24083A98 */ li $t0, 15000
/* 00A224 80009624 44056000 */ mfc1 $a1, $f12
/* 00A228 80009628 44067000 */ mfc1 $a2, $f14
/* 00A22C 8000962C 314A0078 */ andi $t2, $t2, 0x78
/* 00A230 80009630 01C02025 */ move $a0, $t6
/* 00A234 80009634 AFBF0034 */ sw $ra, 0x34($sp)
/* 00A238 80009638 AFA70044 */ sw $a3, 0x44($sp)
/* 00A23C 8000963C AFA8001C */ sw $t0, 0x1c($sp)
/* 00A240 80009640 AFB80014 */ sw $t8, 0x14($sp)
/* 00A244 80009644 AFA00020 */ sw $zero, 0x20($sp)
/* 00A248 80009648 AFAF0010 */ sw $t7, 0x10($sp)
/* 00A24C 8000964C 11400013 */ beqz $t2, .L8000969C
/* 00A250 80009650 AFB90018 */ sw $t9, 0x18($sp)
/* 00A254 80009654 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000
/* 00A258 80009658 44813000 */ mtc1 $at, $f6
/* 00A25C 8000965C 240A0001 */ li $t2, 1
/* 00A260 80009660 46062181 */ sub.s $f6, $f4, $f6
/* 00A264 80009664 3C018000 */ lui $at, 0x8000
/* 00A268 80009668 44CAF800 */ ctc1 $t2, $31
/* 00A26C 8000966C 00000000 */ nop
/* 00A270 80009670 460031A4 */ cvt.w.s $f6, $f6
/* 00A274 80009674 444AF800 */ cfc1 $t2, $31
/* 00A278 80009678 00000000 */ nop
/* 00A27C 8000967C 314A0078 */ andi $t2, $t2, 0x78
/* 00A280 80009680 15400004 */ bnez $t2, .L80009694
/* 00A284 80009684 00000000 */ nop
/* 00A288 80009688 440A3000 */ mfc1 $t2, $f6
/* 00A28C 8000968C 10000007 */ b .L800096AC
/* 00A290 80009690 01415025 */ or $t2, $t2, $at
.L80009694:
/* 00A294 80009694 10000005 */ b .L800096AC
/* 00A298 80009698 240AFFFF */ li $t2, -1
.L8000969C:
/* 00A29C 8000969C 440A3000 */ mfc1 $t2, $f6
/* 00A2A0 800096A0 00000000 */ nop
/* 00A2A4 800096A4 0540FFFB */ bltz $t2, .L80009694
/* 00A2A8 800096A8 00000000 */ nop
.L800096AC:
/* 00A2AC 800096AC 8FAC0054 */ lw $t4, 0x54($sp)
/* 00A2B0 800096B0 44C9F800 */ ctc1 $t1, $31
/* 00A2B4 800096B4 240B003F */ li $t3, 63
/* 00A2B8 800096B8 AFAB0028 */ sw $t3, 0x28($sp)
/* 00A2BC 800096BC AFAA0024 */ sw $t2, 0x24($sp)
/* 00A2C0 800096C0 0C0025D3 */ jal func_8000974C
/* 00A2C4 800096C4 AFAC002C */ sw $t4, 0x2c($sp)
/* 00A2C8 800096C8 8FBF0034 */ lw $ra, 0x34($sp)
/* 00A2CC 800096CC 27BD0038 */ addiu $sp, $sp, 0x38
/* 00A2D0 800096D0 03E00008 */ jr $ra
/* 00A2D4 800096D4 00000000 */ nop
@@ -0,0 +1,10 @@
glabel func_800096D8
/* 00A2D8 800096D8 44856000 */ mtc1 $a1, $f12
/* 00A2DC 800096DC 44867000 */ mtc1 $a2, $f14
/* 00A2E0 800096E0 AFA7000C */ sw $a3, 0xc($sp)
/* 00A2E4 800096E4 E48C0000 */ swc1 $f12, ($a0)
/* 00A2E8 800096E8 E48E0004 */ swc1 $f14, 4($a0)
/* 00A2EC 800096EC C7A4000C */ lwc1 $f4, 0xc($sp)
/* 00A2F0 800096F0 03E00008 */ jr $ra
/* 00A2F4 800096F4 E4840008 */ swc1 $f4, 8($a0)

Some files were not shown because too many files have changed in this diff Show More