papermario/asm/nonmatchings/code_102610_len_2330/func_802E153C.s

974 lines
44 KiB
ArmAsm
Raw Normal View History

2020-08-04 08:49:11 +02:00
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802E153C
/* 102DBC 802E153C 27BDFFC0 */ addiu $sp, $sp, -0x40
/* 102DC0 802E1540 AFB00030 */ sw $s0, 0x30($sp)
/* 102DC4 802E1544 0080802D */ daddu $s0, $a0, $zero
/* 102DC8 802E1548 27A20028 */ addiu $v0, $sp, 0x28
/* 102DCC 802E154C 27A40018 */ addiu $a0, $sp, 0x18
/* 102DD0 802E1550 3C014120 */ lui $at, 0x4120
/* 102DD4 802E1554 44810000 */ mtc1 $at, $f0
/* 102DD8 802E1558 27A5001C */ addiu $a1, $sp, 0x1c
/* 102DDC 802E155C AFBF0038 */ sw $ra, 0x38($sp)
/* 102DE0 802E1560 AFB10034 */ sw $s1, 0x34($sp)
/* 102DE4 802E1564 C6020048 */ lwc1 $f2, 0x48($s0)
/* 102DE8 802E1568 C604004C */ lwc1 $f4, 0x4c($s0)
/* 102DEC 802E156C C6060050 */ lwc1 $f6, 0x50($s0)
/* 102DF0 802E1570 27A60020 */ addiu $a2, $sp, 0x20
/* 102DF4 802E1574 E7A0002C */ swc1 $f0, 0x2c($sp)
/* 102DF8 802E1578 E7A20018 */ swc1 $f2, 0x18($sp)
/* 102DFC 802E157C E7A4001C */ swc1 $f4, 0x1c($sp)
/* 102E00 802E1580 E7A60020 */ swc1 $f6, 0x20($sp)
/* 102E04 802E1584 8E110040 */ lw $s1, 0x40($s0)
/* 102E08 802E1588 27A70024 */ addiu $a3, $sp, 0x24
/* 102E0C 802E158C AFA20010 */ sw $v0, 0x10($sp)
/* 102E10 802E1590 27A2002C */ addiu $v0, $sp, 0x2c
/* 102E14 802E1594 0C04497A */ jal func_801125E8
/* 102E18 802E1598 AFA20014 */ sw $v0, 0x14($sp)
/* 102E1C 802E159C C600004C */ lwc1 $f0, 0x4c($s0)
/* 102E20 802E15A0 C7A4001C */ lwc1 $f4, 0x1c($sp)
/* 102E24 802E15A4 46040032 */ c.eq.s $f0, $f4
/* 102E28 802E15A8 00000000 */ nop
/* 102E2C 802E15AC 45010014 */ bc1t .L802E1600
/* 102E30 802E15B0 00000000 */ nop
/* 102E34 802E15B4 4600203C */ c.lt.s $f4, $f0
/* 102E38 802E15B8 00000000 */ nop
/* 102E3C 802E15BC 45000010 */ bc1f .L802E1600
/* 102E40 802E15C0 00000000 */ nop
/* 102E44 802E15C4 C6220000 */ lwc1 $f2, ($s1)
/* 102E48 802E15C8 3C013FE0 */ lui $at, 0x3fe0
/* 102E4C 802E15CC 44810800 */ mtc1 $at, $f1
/* 102E50 802E15D0 44800000 */ mtc1 $zero, $f0
/* 102E54 802E15D4 460010A1 */ cvt.d.s $f2, $f2
/* 102E58 802E15D8 46201080 */ add.d $f2, $f2, $f0
/* 102E5C 802E15DC 462010A0 */ cvt.s.d $f2, $f2
/* 102E60 802E15E0 E6220000 */ swc1 $f2, ($s1)
/* 102E64 802E15E4 C600004C */ lwc1 $f0, 0x4c($s0)
/* 102E68 802E15E8 46020001 */ sub.s $f0, $f0, $f2
/* 102E6C 802E15EC 4604003C */ c.lt.s $f0, $f4
/* 102E70 802E15F0 00000000 */ nop
/* 102E74 802E15F4 45000002 */ bc1f .L802E1600
/* 102E78 802E15F8 E600004C */ swc1 $f0, 0x4c($s0)
/* 102E7C 802E15FC E604004C */ swc1 $f4, 0x4c($s0)
.L802E1600:
/* 102E80 802E1600 8FBF0038 */ lw $ra, 0x38($sp)
/* 102E84 802E1604 8FB10034 */ lw $s1, 0x34($sp)
/* 102E88 802E1608 8FB00030 */ lw $s0, 0x30($sp)
/* 102E8C 802E160C 03E00008 */ jr $ra
/* 102E90 802E1610 27BD0040 */ addiu $sp, $sp, 0x40
/* 102E94 802E1614 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 102E98 802E1618 AFBF0010 */ sw $ra, 0x10($sp)
/* 102E9C 802E161C 90820006 */ lbu $v0, 6($a0)
/* 102EA0 802E1620 30420001 */ andi $v0, $v0, 1
/* 102EA4 802E1624 1040000B */ beqz $v0, .L802E1654
/* 102EA8 802E1628 00000000 */ nop
/* 102EAC 802E162C 3C028011 */ lui $v0, 0x8011
/* 102EB0 802E1630 2442EFC8 */ addiu $v0, $v0, -0x1038
/* 102EB4 802E1634 804300B4 */ lb $v1, 0xb4($v0)
/* 102EB8 802E1638 2402000E */ addiu $v0, $zero, 0xe
/* 102EBC 802E163C 10620003 */ beq $v1, $v0, .L802E164C
/* 102EC0 802E1640 24020010 */ addiu $v0, $zero, 0x10
/* 102EC4 802E1644 14620003 */ bne $v1, $v0, .L802E1654
/* 102EC8 802E1648 00000000 */ nop
.L802E164C:
/* 102ECC 802E164C 0C043F5A */ jal func_8010FD68
/* 102ED0 802E1650 00000000 */ nop
.L802E1654:
/* 102ED4 802E1654 8FBF0010 */ lw $ra, 0x10($sp)
/* 102ED8 802E1658 03E00008 */ jr $ra
/* 102EDC 802E165C 27BD0018 */ addiu $sp, $sp, 0x18
/* 102EE0 802E1660 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 102EE4 802E1664 AFB00010 */ sw $s0, 0x10($sp)
/* 102EE8 802E1668 0080802D */ daddu $s0, $a0, $zero
/* 102EEC 802E166C AFBF0020 */ sw $ra, 0x20($sp)
/* 102EF0 802E1670 AFB3001C */ sw $s3, 0x1c($sp)
/* 102EF4 802E1674 AFB20018 */ sw $s2, 0x18($sp)
/* 102EF8 802E1678 AFB10014 */ sw $s1, 0x14($sp)
/* 102EFC 802E167C 0C0B854F */ jal func_802E153C
/* 102F00 802E1680 8E130040 */ lw $s3, 0x40($s0)
/* 102F04 802E1684 3C118011 */ lui $s1, 0x8011
/* 102F08 802E1688 2631EFC8 */ addiu $s1, $s1, -0x1038
/* 102F0C 802E168C 92020006 */ lbu $v0, 6($s0)
/* 102F10 802E1690 3C128011 */ lui $s2, 0x8011
/* 102F14 802E1694 2652EBB0 */ addiu $s2, $s2, -0x1450
/* 102F18 802E1698 30420040 */ andi $v0, $v0, 0x40
/* 102F1C 802E169C 1040000A */ beqz $v0, .L802E16C8
/* 102F20 802E16A0 24020012 */ addiu $v0, $zero, 0x12
/* 102F24 802E16A4 822300B4 */ lb $v1, 0xb4($s1)
/* 102F28 802E16A8 14620009 */ bne $v1, $v0, .L802E16D0
/* 102F2C 802E16AC 2402000D */ addiu $v0, $zero, 0xd
/* 102F30 802E16B0 3C028011 */ lui $v0, 0x8011
/* 102F34 802E16B4 8042F291 */ lb $v0, -0xd6f($v0)
/* 102F38 802E16B8 0440001A */ bltz $v0, .L802E1724
/* 102F3C 802E16BC 00000000 */ nop
/* 102F40 802E16C0 080B85C2 */ j .L802E1708
/* 102F44 802E16C4 00000000 */ nop
.L802E16C8:
/* 102F48 802E16C8 822300B4 */ lb $v1, 0xb4($s1)
/* 102F4C 802E16CC 2402000D */ addiu $v0, $zero, 0xd
.L802E16D0:
/* 102F50 802E16D0 10620014 */ beq $v1, $v0, .L802E1724
/* 102F54 802E16D4 24020004 */ addiu $v0, $zero, 4
/* 102F58 802E16D8 82430003 */ lb $v1, 3($s2)
/* 102F5C 802E16DC 14620004 */ bne $v1, $v0, .L802E16F0
/* 102F60 802E16E0 00000000 */ nop
/* 102F64 802E16E4 82420000 */ lb $v0, ($s2)
/* 102F68 802E16E8 1440000E */ bnez $v0, .L802E1724
/* 102F6C 802E16EC 00000000 */ nop
.L802E16F0:
/* 102F70 802E16F0 92030006 */ lbu $v1, 6($s0)
/* 102F74 802E16F4 30620001 */ andi $v0, $v1, 1
/* 102F78 802E16F8 14400003 */ bnez $v0, .L802E1708
/* 102F7C 802E16FC 30620080 */ andi $v0, $v1, 0x80
/* 102F80 802E1700 10400008 */ beqz $v0, .L802E1724
/* 102F84 802E1704 00000000 */ nop
.L802E1708:
/* 102F88 802E1708 0C043F5A */ jal func_8010FD68
/* 102F8C 802E170C 0200202D */ daddu $a0, $s0, $zero
/* 102F90 802E1710 8E640028 */ lw $a0, 0x28($s3)
/* 102F94 802E1714 10800003 */ beqz $a0, .L802E1724
/* 102F98 802E1718 00000000 */ nop
/* 102F9C 802E171C 0C043F5A */ jal func_8010FD68
/* 102FA0 802E1720 00000000 */ nop
.L802E1724:
/* 102FA4 802E1724 8FBF0020 */ lw $ra, 0x20($sp)
/* 102FA8 802E1728 8FB3001C */ lw $s3, 0x1c($sp)
/* 102FAC 802E172C 8FB20018 */ lw $s2, 0x18($sp)
/* 102FB0 802E1730 8FB10014 */ lw $s1, 0x14($sp)
/* 102FB4 802E1734 8FB00010 */ lw $s0, 0x10($sp)
/* 102FB8 802E1738 03E00008 */ jr $ra
/* 102FBC 802E173C 27BD0028 */ addiu $sp, $sp, 0x28
/* 102FC0 802E1740 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 102FC4 802E1744 AFBF0010 */ sw $ra, 0x10($sp)
/* 102FC8 802E1748 90820006 */ lbu $v0, 6($a0)
/* 102FCC 802E174C 30420001 */ andi $v0, $v0, 1
/* 102FD0 802E1750 14400003 */ bnez $v0, .L802E1760
/* 102FD4 802E1754 00000000 */ nop
/* 102FD8 802E1758 0C043F5A */ jal func_8010FD68
/* 102FDC 802E175C 00000000 */ nop
.L802E1760:
/* 102FE0 802E1760 8FBF0010 */ lw $ra, 0x10($sp)
/* 102FE4 802E1764 03E00008 */ jr $ra
/* 102FE8 802E1768 27BD0018 */ addiu $sp, $sp, 0x18
/* 102FEC 802E176C 8C820040 */ lw $v0, 0x40($a0)
/* 102FF0 802E1770 3C013F80 */ lui $at, 0x3f80
/* 102FF4 802E1774 44810000 */ mtc1 $at, $f0
/* 102FF8 802E1778 3C013DCC */ lui $at, 0x3dcc
/* 102FFC 802E177C 3421CCCD */ ori $at, $at, 0xcccd
/* 103000 802E1780 44811000 */ mtc1 $at, $f2
/* 103004 802E1784 3C01BDCC */ lui $at, 0xbdcc
/* 103008 802E1788 3421CCCD */ ori $at, $at, 0xcccd
/* 10300C 802E178C 44812000 */ mtc1 $at, $f4
/* 103010 802E1790 E4400000 */ swc1 $f0, ($v0)
/* 103014 802E1794 E4420004 */ swc1 $f2, 4($v0)
/* 103018 802E1798 E4440008 */ swc1 $f4, 8($v0)
/* 10301C 802E179C A0400010 */ sb $zero, 0x10($v0)
/* 103020 802E17A0 03E00008 */ jr $ra
/* 103024 802E17A4 A0400011 */ sb $zero, 0x11($v0)
/* 103028 802E17A8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 10302C 802E17AC AFB10014 */ sw $s1, 0x14($sp)
/* 103030 802E17B0 0080882D */ daddu $s1, $a0, $zero
/* 103034 802E17B4 AFBF001C */ sw $ra, 0x1c($sp)
/* 103038 802E17B8 AFB20018 */ sw $s2, 0x18($sp)
/* 10303C 802E17BC AFB00010 */ sw $s0, 0x10($sp)
/* 103040 802E17C0 8E300040 */ lw $s0, 0x40($s1)
/* 103044 802E17C4 82030010 */ lb $v1, 0x10($s0)
/* 103048 802E17C8 2C620006 */ sltiu $v0, $v1, 6
/* 10304C 802E17CC 104000D3 */ beqz $v0, .L802E1B1C
/* 103050 802E17D0 0000902D */ daddu $s2, $zero, $zero
/* 103054 802E17D4 00031080 */ sll $v0, $v1, 2
/* 103058 802E17D8 3C01802F */ lui $at, 0x802f
/* 10305C 802E17DC 00220821 */ addu $at, $at, $v0
/* 103060 802E17E0 8C22B010 */ lw $v0, -0x4ff0($at)
/* 103064 802E17E4 00400008 */ jr $v0
/* 103068 802E17E8 00000000 */ nop
/* 10306C 802E17EC C602001C */ lwc1 $f2, 0x1c($s0)
/* 103070 802E17F0 3C01802F */ lui $at, 0x802f
/* 103074 802E17F4 D420B028 */ ldc1 $f0, -0x4fd8($at)
/* 103078 802E17F8 460010A1 */ cvt.d.s $f2, $f2
/* 10307C 802E17FC 46201082 */ mul.d $f2, $f2, $f0
/* 103080 802E1800 00000000 */ nop
/* 103084 802E1804 C6000014 */ lwc1 $f0, 0x14($s0)
/* 103088 802E1808 462011A0 */ cvt.s.d $f6, $f2
/* 10308C 802E180C 46060000 */ add.s $f0, $f0, $f6
/* 103090 802E1810 C6220054 */ lwc1 $f2, 0x54($s1)
/* 103094 802E1814 46020001 */ sub.s $f0, $f0, $f2
/* 103098 802E1818 3C013FD0 */ lui $at, 0x3fd0
/* 10309C 802E181C 44811800 */ mtc1 $at, $f3
/* 1030A0 802E1820 44801000 */ mtc1 $zero, $f2
/* 1030A4 802E1824 46000021 */ cvt.d.s $f0, $f0
/* 1030A8 802E1828 46220002 */ mul.d $f0, $f0, $f2
/* 1030AC 802E182C 00000000 */ nop
/* 1030B0 802E1830 3C01802F */ lui $at, 0x802f
/* 1030B4 802E1834 D422B030 */ ldc1 $f2, -0x4fd0($at)
/* 1030B8 802E1838 46200120 */ cvt.s.d $f4, $f0
/* 1030BC 802E183C 46002021 */ cvt.d.s $f0, $f4
/* 1030C0 802E1840 4622003C */ c.lt.d $f0, $f2
/* 1030C4 802E1844 00000000 */ nop
/* 1030C8 802E1848 45000004 */ bc1f .L802E185C
/* 1030CC 802E184C 00000000 */ nop
/* 1030D0 802E1850 3C013C23 */ lui $at, 0x3c23
/* 1030D4 802E1854 3421D70A */ ori $at, $at, 0xd70a
/* 1030D8 802E1858 44812000 */ mtc1 $at, $f4
.L802E185C:
/* 1030DC 802E185C C6000004 */ lwc1 $f0, 4($s0)
/* 1030E0 802E1860 46040000 */ add.s $f0, $f0, $f4
/* 1030E4 802E1864 E6000004 */ swc1 $f0, 4($s0)
/* 1030E8 802E1868 C6220054 */ lwc1 $f2, 0x54($s1)
/* 1030EC 802E186C 46001080 */ add.s $f2, $f2, $f0
/* 1030F0 802E1870 E6220054 */ swc1 $f2, 0x54($s1)
/* 1030F4 802E1874 C6000014 */ lwc1 $f0, 0x14($s0)
/* 1030F8 802E1878 46060000 */ add.s $f0, $f0, $f6
/* 1030FC 802E187C 4602003E */ c.le.s $f0, $f2
/* 103100 802E1880 00000000 */ nop
/* 103104 802E1884 450000A5 */ bc1f .L802E1B1C
/* 103108 802E1888 00000000 */ nop
/* 10310C 802E188C 080B86C1 */ j .L802E1B04
/* 103110 802E1890 00000000 */ nop
/* 103114 802E1894 C602001C */ lwc1 $f2, 0x1c($s0)
/* 103118 802E1898 3C01802F */ lui $at, 0x802f
/* 10311C 802E189C D420B038 */ ldc1 $f0, -0x4fc8($at)
/* 103120 802E18A0 460010A1 */ cvt.d.s $f2, $f2
/* 103124 802E18A4 46201082 */ mul.d $f2, $f2, $f0
/* 103128 802E18A8 00000000 */ nop
/* 10312C 802E18AC C6000014 */ lwc1 $f0, 0x14($s0)
/* 103130 802E18B0 462011A0 */ cvt.s.d $f6, $f2
/* 103134 802E18B4 46060000 */ add.s $f0, $f0, $f6
/* 103138 802E18B8 C6220054 */ lwc1 $f2, 0x54($s1)
/* 10313C 802E18BC 46020001 */ sub.s $f0, $f0, $f2
/* 103140 802E18C0 3C014018 */ lui $at, 0x4018
/* 103144 802E18C4 44811800 */ mtc1 $at, $f3
/* 103148 802E18C8 44801000 */ mtc1 $zero, $f2
/* 10314C 802E18CC 46000021 */ cvt.d.s $f0, $f0
/* 103150 802E18D0 46220003 */ div.d $f0, $f0, $f2
/* 103154 802E18D4 46200120 */ cvt.s.d $f4, $f0
/* 103158 802E18D8 3C01802F */ lui $at, 0x802f
/* 10315C 802E18DC D422B040 */ ldc1 $f2, -0x4fc0($at)
/* 103160 802E18E0 46002021 */ cvt.d.s $f0, $f4
/* 103164 802E18E4 4620103C */ c.lt.d $f2, $f0
/* 103168 802E18E8 00000000 */ nop
/* 10316C 802E18EC 45000004 */ bc1f .L802E1900
/* 103170 802E18F0 00000000 */ nop
/* 103174 802E18F4 3C01BC23 */ lui $at, 0xbc23
/* 103178 802E18F8 3421D70A */ ori $at, $at, 0xd70a
/* 10317C 802E18FC 44812000 */ mtc1 $at, $f4
.L802E1900:
/* 103180 802E1900 C6000004 */ lwc1 $f0, 4($s0)
/* 103184 802E1904 46040000 */ add.s $f0, $f0, $f4
/* 103188 802E1908 E6000004 */ swc1 $f0, 4($s0)
/* 10318C 802E190C C6220054 */ lwc1 $f2, 0x54($s1)
/* 103190 802E1910 46001080 */ add.s $f2, $f2, $f0
/* 103194 802E1914 E6220054 */ swc1 $f2, 0x54($s1)
/* 103198 802E1918 C6000014 */ lwc1 $f0, 0x14($s0)
/* 10319C 802E191C 46060000 */ add.s $f0, $f0, $f6
/* 1031A0 802E1920 4600103E */ c.le.s $f2, $f0
/* 1031A4 802E1924 00000000 */ nop
/* 1031A8 802E1928 4500007C */ bc1f .L802E1B1C
/* 1031AC 802E192C 00000000 */ nop
/* 1031B0 802E1930 080B86C1 */ j .L802E1B04
/* 1031B4 802E1934 00000000 */ nop
/* 1031B8 802E1938 C602001C */ lwc1 $f2, 0x1c($s0)
/* 1031BC 802E193C 3C01802F */ lui $at, 0x802f
/* 1031C0 802E1940 D420B048 */ ldc1 $f0, -0x4fb8($at)
/* 1031C4 802E1944 460010A1 */ cvt.d.s $f2, $f2
/* 1031C8 802E1948 46201082 */ mul.d $f2, $f2, $f0
/* 1031CC 802E194C 00000000 */ nop
/* 1031D0 802E1950 C6000014 */ lwc1 $f0, 0x14($s0)
/* 1031D4 802E1954 462011A0 */ cvt.s.d $f6, $f2
/* 1031D8 802E1958 46060000 */ add.s $f0, $f0, $f6
/* 1031DC 802E195C C6220054 */ lwc1 $f2, 0x54($s1)
/* 1031E0 802E1960 46020001 */ sub.s $f0, $f0, $f2
/* 1031E4 802E1964 3C013FD0 */ lui $at, 0x3fd0
/* 1031E8 802E1968 44811800 */ mtc1 $at, $f3
/* 1031EC 802E196C 44801000 */ mtc1 $zero, $f2
/* 1031F0 802E1970 46000021 */ cvt.d.s $f0, $f0
/* 1031F4 802E1974 46220002 */ mul.d $f0, $f0, $f2
/* 1031F8 802E1978 00000000 */ nop
/* 1031FC 802E197C 3C01802F */ lui $at, 0x802f
/* 103200 802E1980 D422B050 */ ldc1 $f2, -0x4fb0($at)
/* 103204 802E1984 46200120 */ cvt.s.d $f4, $f0
/* 103208 802E1988 46002021 */ cvt.d.s $f0, $f4
/* 10320C 802E198C 4622003C */ c.lt.d $f0, $f2
/* 103210 802E1990 00000000 */ nop
/* 103214 802E1994 45000004 */ bc1f .L802E19A8
/* 103218 802E1998 00000000 */ nop
/* 10321C 802E199C 3C013C23 */ lui $at, 0x3c23
/* 103220 802E19A0 3421D70A */ ori $at, $at, 0xd70a
/* 103224 802E19A4 44812000 */ mtc1 $at, $f4
.L802E19A8:
/* 103228 802E19A8 C6000004 */ lwc1 $f0, 4($s0)
/* 10322C 802E19AC 46040000 */ add.s $f0, $f0, $f4
/* 103230 802E19B0 E6000004 */ swc1 $f0, 4($s0)
/* 103234 802E19B4 C6220054 */ lwc1 $f2, 0x54($s1)
/* 103238 802E19B8 46001080 */ add.s $f2, $f2, $f0
/* 10323C 802E19BC E6220054 */ swc1 $f2, 0x54($s1)
/* 103240 802E19C0 C6000014 */ lwc1 $f0, 0x14($s0)
/* 103244 802E19C4 46060000 */ add.s $f0, $f0, $f6
/* 103248 802E19C8 4602003E */ c.le.s $f0, $f2
/* 10324C 802E19CC 00000000 */ nop
/* 103250 802E19D0 45000052 */ bc1f .L802E1B1C
/* 103254 802E19D4 00000000 */ nop
/* 103258 802E19D8 080B86C1 */ j .L802E1B04
/* 10325C 802E19DC 00000000 */ nop
/* 103260 802E19E0 C602001C */ lwc1 $f2, 0x1c($s0)
/* 103264 802E19E4 3C01802F */ lui $at, 0x802f
/* 103268 802E19E8 D420B058 */ ldc1 $f0, -0x4fa8($at)
/* 10326C 802E19EC 460010A1 */ cvt.d.s $f2, $f2
/* 103270 802E19F0 46201082 */ mul.d $f2, $f2, $f0
/* 103274 802E19F4 00000000 */ nop
/* 103278 802E19F8 C6000014 */ lwc1 $f0, 0x14($s0)
/* 10327C 802E19FC 462011A0 */ cvt.s.d $f6, $f2
/* 103280 802E1A00 46060000 */ add.s $f0, $f0, $f6
/* 103284 802E1A04 C6220054 */ lwc1 $f2, 0x54($s1)
/* 103288 802E1A08 46020001 */ sub.s $f0, $f0, $f2
/* 10328C 802E1A0C 3C014018 */ lui $at, 0x4018
/* 103290 802E1A10 44811800 */ mtc1 $at, $f3
/* 103294 802E1A14 44801000 */ mtc1 $zero, $f2
/* 103298 802E1A18 46000021 */ cvt.d.s $f0, $f0
/* 10329C 802E1A1C 46220003 */ div.d $f0, $f0, $f2
/* 1032A0 802E1A20 46200120 */ cvt.s.d $f4, $f0
/* 1032A4 802E1A24 3C01802F */ lui $at, 0x802f
/* 1032A8 802E1A28 D422B060 */ ldc1 $f2, -0x4fa0($at)
/* 1032AC 802E1A2C 46002021 */ cvt.d.s $f0, $f4
/* 1032B0 802E1A30 4620103C */ c.lt.d $f2, $f0
/* 1032B4 802E1A34 00000000 */ nop
/* 1032B8 802E1A38 45000004 */ bc1f .L802E1A4C
/* 1032BC 802E1A3C 00000000 */ nop
/* 1032C0 802E1A40 3C01BC23 */ lui $at, 0xbc23
/* 1032C4 802E1A44 3421D70A */ ori $at, $at, 0xd70a
/* 1032C8 802E1A48 44812000 */ mtc1 $at, $f4
.L802E1A4C:
/* 1032CC 802E1A4C C6000004 */ lwc1 $f0, 4($s0)
/* 1032D0 802E1A50 46040000 */ add.s $f0, $f0, $f4
/* 1032D4 802E1A54 E6000004 */ swc1 $f0, 4($s0)
/* 1032D8 802E1A58 C6220054 */ lwc1 $f2, 0x54($s1)
/* 1032DC 802E1A5C 46001080 */ add.s $f2, $f2, $f0
/* 1032E0 802E1A60 E6220054 */ swc1 $f2, 0x54($s1)
/* 1032E4 802E1A64 C6000014 */ lwc1 $f0, 0x14($s0)
/* 1032E8 802E1A68 46060000 */ add.s $f0, $f0, $f6
/* 1032EC 802E1A6C 4600103E */ c.le.s $f2, $f0
/* 1032F0 802E1A70 00000000 */ nop
/* 1032F4 802E1A74 45000029 */ bc1f .L802E1B1C
/* 1032F8 802E1A78 00000000 */ nop
/* 1032FC 802E1A7C 080B86C1 */ j .L802E1B04
/* 103300 802E1A80 00000000 */ nop
/* 103304 802E1A84 C6000014 */ lwc1 $f0, 0x14($s0)
/* 103308 802E1A88 C6220054 */ lwc1 $f2, 0x54($s1)
/* 10330C 802E1A8C 46020001 */ sub.s $f0, $f0, $f2
/* 103310 802E1A90 3C013FD0 */ lui $at, 0x3fd0
/* 103314 802E1A94 44811800 */ mtc1 $at, $f3
/* 103318 802E1A98 44801000 */ mtc1 $zero, $f2
/* 10331C 802E1A9C 46000021 */ cvt.d.s $f0, $f0
/* 103320 802E1AA0 46220002 */ mul.d $f0, $f0, $f2
/* 103324 802E1AA4 00000000 */ nop
/* 103328 802E1AA8 3C01802F */ lui $at, 0x802f
/* 10332C 802E1AAC D422B068 */ ldc1 $f2, -0x4f98($at)
/* 103330 802E1AB0 46200120 */ cvt.s.d $f4, $f0
/* 103334 802E1AB4 46002021 */ cvt.d.s $f0, $f4
/* 103338 802E1AB8 4622003C */ c.lt.d $f0, $f2
/* 10333C 802E1ABC 00000000 */ nop
/* 103340 802E1AC0 45000004 */ bc1f .L802E1AD4
/* 103344 802E1AC4 00000000 */ nop
/* 103348 802E1AC8 3C013C23 */ lui $at, 0x3c23
/* 10334C 802E1ACC 3421D70A */ ori $at, $at, 0xd70a
/* 103350 802E1AD0 44812000 */ mtc1 $at, $f4
.L802E1AD4:
/* 103354 802E1AD4 C6000004 */ lwc1 $f0, 4($s0)
/* 103358 802E1AD8 46040000 */ add.s $f0, $f0, $f4
/* 10335C 802E1ADC E6000004 */ swc1 $f0, 4($s0)
/* 103360 802E1AE0 C6220054 */ lwc1 $f2, 0x54($s1)
/* 103364 802E1AE4 46001080 */ add.s $f2, $f2, $f0
/* 103368 802E1AE8 E6220054 */ swc1 $f2, 0x54($s1)
/* 10336C 802E1AEC C6000014 */ lwc1 $f0, 0x14($s0)
/* 103370 802E1AF0 4602003E */ c.le.s $f0, $f2
/* 103374 802E1AF4 00000000 */ nop
/* 103378 802E1AF8 45000008 */ bc1f .L802E1B1C
/* 10337C 802E1AFC 00000000 */ nop
/* 103380 802E1B00 E6200054 */ swc1 $f0, 0x54($s1)
.L802E1B04:
/* 103384 802E1B04 92020010 */ lbu $v0, 0x10($s0)
/* 103388 802E1B08 AE000004 */ sw $zero, 4($s0)
/* 10338C 802E1B0C 24420001 */ addiu $v0, $v0, 1
/* 103390 802E1B10 080B86C7 */ j .L802E1B1C
/* 103394 802E1B14 A2020010 */ sb $v0, 0x10($s0)
/* 103398 802E1B18 26520001 */ addiu $s2, $s2, 1
.L802E1B1C:
/* 10339C 802E1B1C C6200054 */ lwc1 $f0, 0x54($s1)
/* 1033A0 802E1B20 E620005C */ swc1 $f0, 0x5c($s1)
/* 1033A4 802E1B24 82030011 */ lb $v1, 0x11($s0)
/* 1033A8 802E1B28 2C620006 */ sltiu $v0, $v1, 6
/* 1033AC 802E1B2C 104000D0 */ beqz $v0, .L802E1E70
/* 1033B0 802E1B30 00031080 */ sll $v0, $v1, 2
/* 1033B4 802E1B34 3C01802F */ lui $at, 0x802f
/* 1033B8 802E1B38 00220821 */ addu $at, $at, $v0
/* 1033BC 802E1B3C 8C22B070 */ lw $v0, -0x4f90($at)
/* 1033C0 802E1B40 00400008 */ jr $v0
/* 1033C4 802E1B44 00000000 */ nop
/* 1033C8 802E1B48 C602001C */ lwc1 $f2, 0x1c($s0)
/* 1033CC 802E1B4C 3C01BFE0 */ lui $at, 0xbfe0
/* 1033D0 802E1B50 44810800 */ mtc1 $at, $f1
/* 1033D4 802E1B54 44800000 */ mtc1 $zero, $f0
/* 1033D8 802E1B58 460010A1 */ cvt.d.s $f2, $f2
/* 1033DC 802E1B5C 46201082 */ mul.d $f2, $f2, $f0
/* 1033E0 802E1B60 00000000 */ nop
/* 1033E4 802E1B64 C6000018 */ lwc1 $f0, 0x18($s0)
/* 1033E8 802E1B68 462011A0 */ cvt.s.d $f6, $f2
/* 1033EC 802E1B6C 46060000 */ add.s $f0, $f0, $f6
/* 1033F0 802E1B70 C6220058 */ lwc1 $f2, 0x58($s1)
/* 1033F4 802E1B74 46020001 */ sub.s $f0, $f0, $f2
/* 1033F8 802E1B78 3C014014 */ lui $at, 0x4014
/* 1033FC 802E1B7C 44811800 */ mtc1 $at, $f3
/* 103400 802E1B80 44801000 */ mtc1 $zero, $f2
/* 103404 802E1B84 46000021 */ cvt.d.s $f0, $f0
/* 103408 802E1B88 46220003 */ div.d $f0, $f0, $f2
/* 10340C 802E1B8C 46200120 */ cvt.s.d $f4, $f0
/* 103410 802E1B90 3C01802F */ lui $at, 0x802f
/* 103414 802E1B94 D422B088 */ ldc1 $f2, -0x4f78($at)
/* 103418 802E1B98 46002021 */ cvt.d.s $f0, $f4
/* 10341C 802E1B9C 4620103C */ c.lt.d $f2, $f0
/* 103420 802E1BA0 00000000 */ nop
/* 103424 802E1BA4 45000004 */ bc1f .L802E1BB8
/* 103428 802E1BA8 00000000 */ nop
/* 10342C 802E1BAC 3C01BC23 */ lui $at, 0xbc23
/* 103430 802E1BB0 3421D70A */ ori $at, $at, 0xd70a
/* 103434 802E1BB4 44812000 */ mtc1 $at, $f4
.L802E1BB8:
/* 103438 802E1BB8 C6000008 */ lwc1 $f0, 8($s0)
/* 10343C 802E1BBC 46040000 */ add.s $f0, $f0, $f4
/* 103440 802E1BC0 E6000008 */ swc1 $f0, 8($s0)
/* 103444 802E1BC4 C6220058 */ lwc1 $f2, 0x58($s1)
/* 103448 802E1BC8 46001080 */ add.s $f2, $f2, $f0
/* 10344C 802E1BCC E6220058 */ swc1 $f2, 0x58($s1)
/* 103450 802E1BD0 C6000018 */ lwc1 $f0, 0x18($s0)
/* 103454 802E1BD4 46060000 */ add.s $f0, $f0, $f6
/* 103458 802E1BD8 4600103E */ c.le.s $f2, $f0
/* 10345C 802E1BDC 00000000 */ nop
/* 103460 802E1BE0 450000A3 */ bc1f .L802E1E70
/* 103464 802E1BE4 00000000 */ nop
/* 103468 802E1BE8 080B8796 */ j .L802E1E58
/* 10346C 802E1BEC 00000000 */ nop
/* 103470 802E1BF0 C602001C */ lwc1 $f2, 0x1c($s0)
/* 103474 802E1BF4 3C01802F */ lui $at, 0x802f
/* 103478 802E1BF8 D420B090 */ ldc1 $f0, -0x4f70($at)
/* 10347C 802E1BFC 460010A1 */ cvt.d.s $f2, $f2
/* 103480 802E1C00 46201082 */ mul.d $f2, $f2, $f0
/* 103484 802E1C04 00000000 */ nop
/* 103488 802E1C08 C6000018 */ lwc1 $f0, 0x18($s0)
/* 10348C 802E1C0C 462011A0 */ cvt.s.d $f6, $f2
/* 103490 802E1C10 46060000 */ add.s $f0, $f0, $f6
/* 103494 802E1C14 C6220058 */ lwc1 $f2, 0x58($s1)
/* 103498 802E1C18 46020001 */ sub.s $f0, $f0, $f2
/* 10349C 802E1C1C 3C014024 */ lui $at, 0x4024
/* 1034A0 802E1C20 44811800 */ mtc1 $at, $f3
/* 1034A4 802E1C24 44801000 */ mtc1 $zero, $f2
/* 1034A8 802E1C28 46000021 */ cvt.d.s $f0, $f0
/* 1034AC 802E1C2C 46220003 */ div.d $f0, $f0, $f2
/* 1034B0 802E1C30 46200120 */ cvt.s.d $f4, $f0
/* 1034B4 802E1C34 3C01802F */ lui $at, 0x802f
/* 1034B8 802E1C38 D422B098 */ ldc1 $f2, -0x4f68($at)
/* 1034BC 802E1C3C 46002021 */ cvt.d.s $f0, $f4
/* 1034C0 802E1C40 4622003C */ c.lt.d $f0, $f2
/* 1034C4 802E1C44 00000000 */ nop
/* 1034C8 802E1C48 45000004 */ bc1f .L802E1C5C
/* 1034CC 802E1C4C 00000000 */ nop
/* 1034D0 802E1C50 3C013C23 */ lui $at, 0x3c23
/* 1034D4 802E1C54 3421D70A */ ori $at, $at, 0xd70a
/* 1034D8 802E1C58 44812000 */ mtc1 $at, $f4
.L802E1C5C:
/* 1034DC 802E1C5C C6000008 */ lwc1 $f0, 8($s0)
/* 1034E0 802E1C60 46040000 */ add.s $f0, $f0, $f4
/* 1034E4 802E1C64 E6000008 */ swc1 $f0, 8($s0)
/* 1034E8 802E1C68 C6220058 */ lwc1 $f2, 0x58($s1)
/* 1034EC 802E1C6C 46001080 */ add.s $f2, $f2, $f0
/* 1034F0 802E1C70 E6220058 */ swc1 $f2, 0x58($s1)
/* 1034F4 802E1C74 C6000018 */ lwc1 $f0, 0x18($s0)
/* 1034F8 802E1C78 46060000 */ add.s $f0, $f0, $f6
/* 1034FC 802E1C7C 4602003E */ c.le.s $f0, $f2
/* 103500 802E1C80 00000000 */ nop
/* 103504 802E1C84 4500007A */ bc1f .L802E1E70
/* 103508 802E1C88 00000000 */ nop
/* 10350C 802E1C8C 080B8796 */ j .L802E1E58
/* 103510 802E1C90 00000000 */ nop
/* 103514 802E1C94 C602001C */ lwc1 $f2, 0x1c($s0)
/* 103518 802E1C98 3C01802F */ lui $at, 0x802f
/* 10351C 802E1C9C D420B0A0 */ ldc1 $f0, -0x4f60($at)
/* 103520 802E1CA0 460010A1 */ cvt.d.s $f2, $f2
/* 103524 802E1CA4 46201082 */ mul.d $f2, $f2, $f0
/* 103528 802E1CA8 00000000 */ nop
/* 10352C 802E1CAC C6000018 */ lwc1 $f0, 0x18($s0)
/* 103530 802E1CB0 462011A0 */ cvt.s.d $f6, $f2
/* 103534 802E1CB4 46060000 */ add.s $f0, $f0, $f6
/* 103538 802E1CB8 C6220058 */ lwc1 $f2, 0x58($s1)
/* 10353C 802E1CBC 46020001 */ sub.s $f0, $f0, $f2
/* 103540 802E1CC0 3C014014 */ lui $at, 0x4014
/* 103544 802E1CC4 44811800 */ mtc1 $at, $f3
/* 103548 802E1CC8 44801000 */ mtc1 $zero, $f2
/* 10354C 802E1CCC 46000021 */ cvt.d.s $f0, $f0
/* 103550 802E1CD0 46220003 */ div.d $f0, $f0, $f2
/* 103554 802E1CD4 46200120 */ cvt.s.d $f4, $f0
/* 103558 802E1CD8 3C01802F */ lui $at, 0x802f
/* 10355C 802E1CDC D422B0A8 */ ldc1 $f2, -0x4f58($at)
/* 103560 802E1CE0 46002021 */ cvt.d.s $f0, $f4
/* 103564 802E1CE4 4620103C */ c.lt.d $f2, $f0
/* 103568 802E1CE8 00000000 */ nop
/* 10356C 802E1CEC 45000004 */ bc1f .L802E1D00
/* 103570 802E1CF0 00000000 */ nop
/* 103574 802E1CF4 3C01BC23 */ lui $at, 0xbc23
/* 103578 802E1CF8 3421D70A */ ori $at, $at, 0xd70a
/* 10357C 802E1CFC 44812000 */ mtc1 $at, $f4
.L802E1D00:
/* 103580 802E1D00 C6000008 */ lwc1 $f0, 8($s0)
/* 103584 802E1D04 46040000 */ add.s $f0, $f0, $f4
/* 103588 802E1D08 E6000008 */ swc1 $f0, 8($s0)
/* 10358C 802E1D0C C6220058 */ lwc1 $f2, 0x58($s1)
/* 103590 802E1D10 46001080 */ add.s $f2, $f2, $f0
/* 103594 802E1D14 E6220058 */ swc1 $f2, 0x58($s1)
/* 103598 802E1D18 C6000018 */ lwc1 $f0, 0x18($s0)
/* 10359C 802E1D1C 46060000 */ add.s $f0, $f0, $f6
/* 1035A0 802E1D20 4600103E */ c.le.s $f2, $f0
/* 1035A4 802E1D24 00000000 */ nop
/* 1035A8 802E1D28 45000051 */ bc1f .L802E1E70
/* 1035AC 802E1D2C 00000000 */ nop
/* 1035B0 802E1D30 080B8796 */ j .L802E1E58
/* 1035B4 802E1D34 00000000 */ nop
/* 1035B8 802E1D38 C602001C */ lwc1 $f2, 0x1c($s0)
/* 1035BC 802E1D3C 44800000 */ mtc1 $zero, $f0
/* 1035C0 802E1D40 44800800 */ mtc1 $zero, $f1
/* 1035C4 802E1D44 460010A1 */ cvt.d.s $f2, $f2
/* 1035C8 802E1D48 46201082 */ mul.d $f2, $f2, $f0
/* 1035CC 802E1D4C 00000000 */ nop
/* 1035D0 802E1D50 C6000018 */ lwc1 $f0, 0x18($s0)
/* 1035D4 802E1D54 462011A0 */ cvt.s.d $f6, $f2
/* 1035D8 802E1D58 46060000 */ add.s $f0, $f0, $f6
/* 1035DC 802E1D5C C6220058 */ lwc1 $f2, 0x58($s1)
/* 1035E0 802E1D60 46020001 */ sub.s $f0, $f0, $f2
/* 1035E4 802E1D64 3C014024 */ lui $at, 0x4024
/* 1035E8 802E1D68 44811800 */ mtc1 $at, $f3
/* 1035EC 802E1D6C 44801000 */ mtc1 $zero, $f2
/* 1035F0 802E1D70 46000021 */ cvt.d.s $f0, $f0
/* 1035F4 802E1D74 46220003 */ div.d $f0, $f0, $f2
/* 1035F8 802E1D78 46200120 */ cvt.s.d $f4, $f0
/* 1035FC 802E1D7C 3C01802F */ lui $at, 0x802f
/* 103600 802E1D80 D422B0B0 */ ldc1 $f2, -0x4f50($at)
/* 103604 802E1D84 46002021 */ cvt.d.s $f0, $f4
/* 103608 802E1D88 4622003C */ c.lt.d $f0, $f2
/* 10360C 802E1D8C 00000000 */ nop
/* 103610 802E1D90 45000004 */ bc1f .L802E1DA4
/* 103614 802E1D94 00000000 */ nop
/* 103618 802E1D98 3C013C23 */ lui $at, 0x3c23
/* 10361C 802E1D9C 3421D70A */ ori $at, $at, 0xd70a
/* 103620 802E1DA0 44812000 */ mtc1 $at, $f4
.L802E1DA4:
/* 103624 802E1DA4 C6000008 */ lwc1 $f0, 8($s0)
/* 103628 802E1DA8 46040000 */ add.s $f0, $f0, $f4
/* 10362C 802E1DAC E6000008 */ swc1 $f0, 8($s0)
/* 103630 802E1DB0 C6220058 */ lwc1 $f2, 0x58($s1)
/* 103634 802E1DB4 46001080 */ add.s $f2, $f2, $f0
/* 103638 802E1DB8 E6220058 */ swc1 $f2, 0x58($s1)
/* 10363C 802E1DBC C6000018 */ lwc1 $f0, 0x18($s0)
/* 103640 802E1DC0 46060000 */ add.s $f0, $f0, $f6
/* 103644 802E1DC4 4602003E */ c.le.s $f0, $f2
/* 103648 802E1DC8 00000000 */ nop
/* 10364C 802E1DCC 45000028 */ bc1f .L802E1E70
/* 103650 802E1DD0 00000000 */ nop
/* 103654 802E1DD4 080B8796 */ j .L802E1E58
/* 103658 802E1DD8 00000000 */ nop
/* 10365C 802E1DDC C6000018 */ lwc1 $f0, 0x18($s0)
/* 103660 802E1DE0 C6220058 */ lwc1 $f2, 0x58($s1)
/* 103664 802E1DE4 46020001 */ sub.s $f0, $f0, $f2
/* 103668 802E1DE8 3C014014 */ lui $at, 0x4014
/* 10366C 802E1DEC 44811800 */ mtc1 $at, $f3
/* 103670 802E1DF0 44801000 */ mtc1 $zero, $f2
/* 103674 802E1DF4 46000021 */ cvt.d.s $f0, $f0
/* 103678 802E1DF8 46220003 */ div.d $f0, $f0, $f2
/* 10367C 802E1DFC 46200120 */ cvt.s.d $f4, $f0
/* 103680 802E1E00 3C01802F */ lui $at, 0x802f
/* 103684 802E1E04 D422B0B8 */ ldc1 $f2, -0x4f48($at)
/* 103688 802E1E08 46002021 */ cvt.d.s $f0, $f4
/* 10368C 802E1E0C 4620103C */ c.lt.d $f2, $f0
/* 103690 802E1E10 00000000 */ nop
/* 103694 802E1E14 45000004 */ bc1f .L802E1E28
/* 103698 802E1E18 00000000 */ nop
/* 10369C 802E1E1C 3C01BC23 */ lui $at, 0xbc23
/* 1036A0 802E1E20 3421D70A */ ori $at, $at, 0xd70a
/* 1036A4 802E1E24 44812000 */ mtc1 $at, $f4
.L802E1E28:
/* 1036A8 802E1E28 C6000008 */ lwc1 $f0, 8($s0)
/* 1036AC 802E1E2C 46040000 */ add.s $f0, $f0, $f4
/* 1036B0 802E1E30 E6000008 */ swc1 $f0, 8($s0)
/* 1036B4 802E1E34 C6220058 */ lwc1 $f2, 0x58($s1)
/* 1036B8 802E1E38 46001080 */ add.s $f2, $f2, $f0
/* 1036BC 802E1E3C E6220058 */ swc1 $f2, 0x58($s1)
/* 1036C0 802E1E40 C6000018 */ lwc1 $f0, 0x18($s0)
/* 1036C4 802E1E44 4600103E */ c.le.s $f2, $f0
/* 1036C8 802E1E48 00000000 */ nop
/* 1036CC 802E1E4C 45000008 */ bc1f .L802E1E70
/* 1036D0 802E1E50 00000000 */ nop
/* 1036D4 802E1E54 E6200058 */ swc1 $f0, 0x58($s1)
.L802E1E58:
/* 1036D8 802E1E58 92020011 */ lbu $v0, 0x11($s0)
/* 1036DC 802E1E5C AE000008 */ sw $zero, 8($s0)
/* 1036E0 802E1E60 24420001 */ addiu $v0, $v0, 1
/* 1036E4 802E1E64 080B879C */ j .L802E1E70
/* 1036E8 802E1E68 A2020011 */ sb $v0, 0x11($s0)
/* 1036EC 802E1E6C 26520001 */ addiu $s2, $s2, 1
.L802E1E70:
/* 1036F0 802E1E70 0C0B854F */ jal func_802E153C
/* 1036F4 802E1E74 0220202D */ daddu $a0, $s1, $zero
/* 1036F8 802E1E78 24020002 */ addiu $v0, $zero, 2
/* 1036FC 802E1E7C 16420004 */ bne $s2, $v0, .L802E1E90
/* 103700 802E1E80 0220202D */ daddu $a0, $s1, $zero
/* 103704 802E1E84 A2000010 */ sb $zero, 0x10($s0)
/* 103708 802E1E88 0C043F5A */ jal func_8010FD68
/* 10370C 802E1E8C A2000011 */ sb $zero, 0x11($s0)
.L802E1E90:
/* 103710 802E1E90 8FBF001C */ lw $ra, 0x1c($sp)
/* 103714 802E1E94 8FB20018 */ lw $s2, 0x18($sp)
/* 103718 802E1E98 8FB10014 */ lw $s1, 0x14($sp)
/* 10371C 802E1E9C 8FB00010 */ lw $s0, 0x10($sp)
/* 103720 802E1EA0 03E00008 */ jr $ra
/* 103724 802E1EA4 27BD0020 */ addiu $sp, $sp, 0x20
/* 103728 802E1EA8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 10372C 802E1EAC AFB00010 */ sw $s0, 0x10($sp)
/* 103730 802E1EB0 0080802D */ daddu $s0, $a0, $zero
/* 103734 802E1EB4 AFBF0014 */ sw $ra, 0x14($sp)
/* 103738 802E1EB8 8E020040 */ lw $v0, 0x40($s0)
/* 10373C 802E1EBC 0C051568 */ jal set_area_flag
/* 103740 802E1EC0 94440020 */ lhu $a0, 0x20($v0)
/* 103744 802E1EC4 0C04419E */ jal func_80110678
/* 103748 802E1EC8 0200202D */ daddu $a0, $s0, $zero
/* 10374C 802E1ECC 8FBF0014 */ lw $ra, 0x14($sp)
/* 103750 802E1ED0 8FB00010 */ lw $s0, 0x10($sp)
/* 103754 802E1ED4 03E00008 */ jr $ra
/* 103758 802E1ED8 27BD0018 */ addiu $sp, $sp, 0x18
/* 10375C 802E1EDC 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 103760 802E1EE0 AFB1001C */ sw $s1, 0x1c($sp)
/* 103764 802E1EE4 0080882D */ daddu $s1, $a0, $zero
/* 103768 802E1EE8 AFBF0024 */ sw $ra, 0x24($sp)
/* 10376C 802E1EEC AFB20020 */ sw $s2, 0x20($sp)
/* 103770 802E1EF0 AFB00018 */ sw $s0, 0x18($sp)
/* 103774 802E1EF4 8E300040 */ lw $s0, 0x40($s1)
/* 103778 802E1EF8 82030010 */ lb $v1, 0x10($s0)
/* 10377C 802E1EFC 2C620005 */ sltiu $v0, $v1, 5
/* 103780 802E1F00 10400087 */ beqz $v0, .L802E2120
/* 103784 802E1F04 0000902D */ daddu $s2, $zero, $zero
/* 103788 802E1F08 00031080 */ sll $v0, $v1, 2
/* 10378C 802E1F0C 3C01802F */ lui $at, 0x802f
/* 103790 802E1F10 00220821 */ addu $at, $at, $v0
/* 103794 802E1F14 8C22B0C0 */ lw $v0, -0x4f40($at)
/* 103798 802E1F18 00400008 */ jr $v0
/* 10379C 802E1F1C 00000000 */ nop
/* 1037A0 802E1F20 C602001C */ lwc1 $f2, 0x1c($s0)
/* 1037A4 802E1F24 3C01802F */ lui $at, 0x802f
/* 1037A8 802E1F28 D420B0D8 */ ldc1 $f0, -0x4f28($at)
/* 1037AC 802E1F2C 460010A1 */ cvt.d.s $f2, $f2
/* 1037B0 802E1F30 46201082 */ mul.d $f2, $f2, $f0
/* 1037B4 802E1F34 00000000 */ nop
/* 1037B8 802E1F38 C6000014 */ lwc1 $f0, 0x14($s0)
/* 1037BC 802E1F3C 462011A0 */ cvt.s.d $f6, $f2
/* 1037C0 802E1F40 46060000 */ add.s $f0, $f0, $f6
/* 1037C4 802E1F44 C6220054 */ lwc1 $f2, 0x54($s1)
/* 1037C8 802E1F48 46020001 */ sub.s $f0, $f0, $f2
/* 1037CC 802E1F4C 3C013FD0 */ lui $at, 0x3fd0
/* 1037D0 802E1F50 44811800 */ mtc1 $at, $f3
/* 1037D4 802E1F54 44801000 */ mtc1 $zero, $f2
/* 1037D8 802E1F58 46000021 */ cvt.d.s $f0, $f0
/* 1037DC 802E1F5C 46220002 */ mul.d $f0, $f0, $f2
/* 1037E0 802E1F60 00000000 */ nop
/* 1037E4 802E1F64 3C01802F */ lui $at, 0x802f
/* 1037E8 802E1F68 D422B0E0 */ ldc1 $f2, -0x4f20($at)
/* 1037EC 802E1F6C 46200120 */ cvt.s.d $f4, $f0
/* 1037F0 802E1F70 46002021 */ cvt.d.s $f0, $f4
/* 1037F4 802E1F74 4622003C */ c.lt.d $f0, $f2
/* 1037F8 802E1F78 00000000 */ nop
/* 1037FC 802E1F7C 45000004 */ bc1f .L802E1F90
/* 103800 802E1F80 00000000 */ nop
/* 103804 802E1F84 3C013C23 */ lui $at, 0x3c23
/* 103808 802E1F88 3421D70A */ ori $at, $at, 0xd70a
/* 10380C 802E1F8C 44812000 */ mtc1 $at, $f4
.L802E1F90:
/* 103810 802E1F90 C6000004 */ lwc1 $f0, 4($s0)
/* 103814 802E1F94 46040000 */ add.s $f0, $f0, $f4
/* 103818 802E1F98 E6000004 */ swc1 $f0, 4($s0)
/* 10381C 802E1F9C C6220054 */ lwc1 $f2, 0x54($s1)
/* 103820 802E1FA0 46001080 */ add.s $f2, $f2, $f0
/* 103824 802E1FA4 E6220054 */ swc1 $f2, 0x54($s1)
/* 103828 802E1FA8 C6000014 */ lwc1 $f0, 0x14($s0)
/* 10382C 802E1FAC 46060000 */ add.s $f0, $f0, $f6
/* 103830 802E1FB0 4602003E */ c.le.s $f0, $f2
/* 103834 802E1FB4 080B8840 */ j .L802E2100
/* 103838 802E1FB8 00000000 */ nop
/* 10383C 802E1FBC C602001C */ lwc1 $f2, 0x1c($s0)
/* 103840 802E1FC0 3C01802F */ lui $at, 0x802f
/* 103844 802E1FC4 D420B0E8 */ ldc1 $f0, -0x4f18($at)
/* 103848 802E1FC8 080B881F */ j .L802E207C
/* 10384C 802E1FCC 460010A1 */ cvt.d.s $f2, $f2
/* 103850 802E1FD0 C602001C */ lwc1 $f2, 0x1c($s0)
/* 103854 802E1FD4 3C01802F */ lui $at, 0x802f
/* 103858 802E1FD8 D420B0F0 */ ldc1 $f0, -0x4f10($at)
/* 10385C 802E1FDC 460010A1 */ cvt.d.s $f2, $f2
/* 103860 802E1FE0 46201082 */ mul.d $f2, $f2, $f0
/* 103864 802E1FE4 00000000 */ nop
/* 103868 802E1FE8 C6000014 */ lwc1 $f0, 0x14($s0)
/* 10386C 802E1FEC 462011A0 */ cvt.s.d $f6, $f2
/* 103870 802E1FF0 46060000 */ add.s $f0, $f0, $f6
/* 103874 802E1FF4 C6220054 */ lwc1 $f2, 0x54($s1)
/* 103878 802E1FF8 46020001 */ sub.s $f0, $f0, $f2
/* 10387C 802E1FFC 3C013FD0 */ lui $at, 0x3fd0
/* 103880 802E2000 44811800 */ mtc1 $at, $f3
/* 103884 802E2004 44801000 */ mtc1 $zero, $f2
/* 103888 802E2008 46000021 */ cvt.d.s $f0, $f0
/* 10388C 802E200C 46220002 */ mul.d $f0, $f0, $f2
/* 103890 802E2010 00000000 */ nop
/* 103894 802E2014 3C01802F */ lui $at, 0x802f
/* 103898 802E2018 D422B0F8 */ ldc1 $f2, -0x4f08($at)
/* 10389C 802E201C 46200120 */ cvt.s.d $f4, $f0
/* 1038A0 802E2020 46002021 */ cvt.d.s $f0, $f4
/* 1038A4 802E2024 4622003C */ c.lt.d $f0, $f2
/* 1038A8 802E2028 00000000 */ nop
/* 1038AC 802E202C 45000004 */ bc1f .L802E2040
/* 1038B0 802E2030 00000000 */ nop
/* 1038B4 802E2034 3C013C23 */ lui $at, 0x3c23
/* 1038B8 802E2038 3421D70A */ ori $at, $at, 0xd70a
/* 1038BC 802E203C 44812000 */ mtc1 $at, $f4
.L802E2040:
/* 1038C0 802E2040 C6000004 */ lwc1 $f0, 4($s0)
/* 1038C4 802E2044 46040000 */ add.s $f0, $f0, $f4
/* 1038C8 802E2048 E6000004 */ swc1 $f0, 4($s0)
/* 1038CC 802E204C C6220054 */ lwc1 $f2, 0x54($s1)
/* 1038D0 802E2050 46001080 */ add.s $f2, $f2, $f0
/* 1038D4 802E2054 E6220054 */ swc1 $f2, 0x54($s1)
/* 1038D8 802E2058 C6000014 */ lwc1 $f0, 0x14($s0)
/* 1038DC 802E205C 46060000 */ add.s $f0, $f0, $f6
/* 1038E0 802E2060 4602003E */ c.le.s $f0, $f2
/* 1038E4 802E2064 080B8840 */ j .L802E2100
/* 1038E8 802E2068 00000000 */ nop
/* 1038EC 802E206C C602001C */ lwc1 $f2, 0x1c($s0)
/* 1038F0 802E2070 3C01802F */ lui $at, 0x802f
/* 1038F4 802E2074 D420B100 */ ldc1 $f0, -0x4f00($at)
/* 1038F8 802E2078 460010A1 */ cvt.d.s $f2, $f2
.L802E207C:
/* 1038FC 802E207C 46201082 */ mul.d $f2, $f2, $f0
/* 103900 802E2080 00000000 */ nop
/* 103904 802E2084 C6000014 */ lwc1 $f0, 0x14($s0)
/* 103908 802E2088 462011A0 */ cvt.s.d $f6, $f2
/* 10390C 802E208C 46060000 */ add.s $f0, $f0, $f6
/* 103910 802E2090 C6220054 */ lwc1 $f2, 0x54($s1)
/* 103914 802E2094 46020001 */ sub.s $f0, $f0, $f2
/* 103918 802E2098 3C014018 */ lui $at, 0x4018
/* 10391C 802E209C 44811800 */ mtc1 $at, $f3
/* 103920 802E20A0 44801000 */ mtc1 $zero, $f2
/* 103924 802E20A4 46000021 */ cvt.d.s $f0, $f0
/* 103928 802E20A8 46220003 */ div.d $f0, $f0, $f2
/* 10392C 802E20AC 46200120 */ cvt.s.d $f4, $f0
/* 103930 802E20B0 3C01802F */ lui $at, 0x802f
/* 103934 802E20B4 D422B108 */ ldc1 $f2, -0x4ef8($at)
/* 103938 802E20B8 46002021 */ cvt.d.s $f0, $f4
/* 10393C 802E20BC 4620103C */ c.lt.d $f2, $f0
/* 103940 802E20C0 00000000 */ nop
/* 103944 802E20C4 45000004 */ bc1f .L802E20D8
/* 103948 802E20C8 00000000 */ nop
/* 10394C 802E20CC 3C01BC23 */ lui $at, 0xbc23
/* 103950 802E20D0 3421D70A */ ori $at, $at, 0xd70a
/* 103954 802E20D4 44812000 */ mtc1 $at, $f4
.L802E20D8:
/* 103958 802E20D8 C6000004 */ lwc1 $f0, 4($s0)
/* 10395C 802E20DC 46040000 */ add.s $f0, $f0, $f4
/* 103960 802E20E0 E6000004 */ swc1 $f0, 4($s0)
/* 103964 802E20E4 C6220054 */ lwc1 $f2, 0x54($s1)
/* 103968 802E20E8 46001080 */ add.s $f2, $f2, $f0
/* 10396C 802E20EC E6220054 */ swc1 $f2, 0x54($s1)
/* 103970 802E20F0 C6000014 */ lwc1 $f0, 0x14($s0)
/* 103974 802E20F4 46060000 */ add.s $f0, $f0, $f6
/* 103978 802E20F8 4600103E */ c.le.s $f2, $f0
/* 10397C 802E20FC 00000000 */ nop
.L802E2100:
/* 103980 802E2100 45000007 */ bc1f .L802E2120
/* 103984 802E2104 00000000 */ nop
/* 103988 802E2108 92020010 */ lbu $v0, 0x10($s0)
/* 10398C 802E210C AE000004 */ sw $zero, 4($s0)
/* 103990 802E2110 24420001 */ addiu $v0, $v0, 1
/* 103994 802E2114 080B8848 */ j .L802E2120
/* 103998 802E2118 A2020010 */ sb $v0, 0x10($s0)
/* 10399C 802E211C 26520001 */ addiu $s2, $s2, 1
.L802E2120:
/* 1039A0 802E2120 C6200054 */ lwc1 $f0, 0x54($s1)
/* 1039A4 802E2124 E620005C */ swc1 $f0, 0x5c($s1)
/* 1039A8 802E2128 82030011 */ lb $v1, 0x11($s0)
/* 1039AC 802E212C 24020001 */ addiu $v0, $zero, 1
/* 1039B0 802E2130 10620013 */ beq $v1, $v0, .L802E2180
/* 1039B4 802E2134 28620002 */ slti $v0, $v1, 2
/* 1039B8 802E2138 10400005 */ beqz $v0, .L802E2150
/* 1039BC 802E213C 24020002 */ addiu $v0, $zero, 2
/* 1039C0 802E2140 10600009 */ beqz $v1, .L802E2168
/* 1039C4 802E2144 00000000 */ nop
/* 1039C8 802E2148 080B88B1 */ j .L802E22C4
/* 1039CC 802E214C 00000000 */ nop
.L802E2150:
/* 1039D0 802E2150 10620031 */ beq $v1, $v0, .L802E2218
/* 1039D4 802E2154 24020003 */ addiu $v0, $zero, 3
/* 1039D8 802E2158 5062005A */ beql $v1, $v0, .L802E22C4
/* 1039DC 802E215C 26520001 */ addiu $s2, $s2, 1
/* 1039E0 802E2160 080B88B1 */ j .L802E22C4
/* 1039E4 802E2164 00000000 */ nop
.L802E2168:
/* 1039E8 802E2168 C602001C */ lwc1 $f2, 0x1c($s0)
/* 1039EC 802E216C 3C01BFE0 */ lui $at, 0xbfe0
/* 1039F0 802E2170 44810800 */ mtc1 $at, $f1
/* 1039F4 802E2174 44800000 */ mtc1 $zero, $f0
/* 1039F8 802E2178 080B888A */ j .L802E2228
/* 1039FC 802E217C 460010A1 */ cvt.d.s $f2, $f2
.L802E2180:
/* 103A00 802E2180 C602001C */ lwc1 $f2, 0x1c($s0)
/* 103A04 802E2184 3C01802F */ lui $at, 0x802f
/* 103A08 802E2188 D420B110 */ ldc1 $f0, -0x4ef0($at)
/* 103A0C 802E218C 460010A1 */ cvt.d.s $f2, $f2
/* 103A10 802E2190 46201082 */ mul.d $f2, $f2, $f0
/* 103A14 802E2194 00000000 */ nop
/* 103A18 802E2198 C6000018 */ lwc1 $f0, 0x18($s0)
/* 103A1C 802E219C 462011A0 */ cvt.s.d $f6, $f2
/* 103A20 802E21A0 46060000 */ add.s $f0, $f0, $f6
/* 103A24 802E21A4 C6220058 */ lwc1 $f2, 0x58($s1)
/* 103A28 802E21A8 46020001 */ sub.s $f0, $f0, $f2
/* 103A2C 802E21AC 3C014024 */ lui $at, 0x4024
/* 103A30 802E21B0 44811800 */ mtc1 $at, $f3
/* 103A34 802E21B4 44801000 */ mtc1 $zero, $f2
/* 103A38 802E21B8 46000021 */ cvt.d.s $f0, $f0
/* 103A3C 802E21BC 46220003 */ div.d $f0, $f0, $f2
/* 103A40 802E21C0 46200120 */ cvt.s.d $f4, $f0
/* 103A44 802E21C4 3C01802F */ lui $at, 0x802f
/* 103A48 802E21C8 D422B118 */ ldc1 $f2, -0x4ee8($at)
/* 103A4C 802E21CC 46002021 */ cvt.d.s $f0, $f4
/* 103A50 802E21D0 4622003C */ c.lt.d $f0, $f2
/* 103A54 802E21D4 00000000 */ nop
/* 103A58 802E21D8 45000004 */ bc1f .L802E21EC
/* 103A5C 802E21DC 00000000 */ nop
/* 103A60 802E21E0 3C013C23 */ lui $at, 0x3c23
/* 103A64 802E21E4 3421D70A */ ori $at, $at, 0xd70a
/* 103A68 802E21E8 44812000 */ mtc1 $at, $f4
.L802E21EC:
/* 103A6C 802E21EC C6000008 */ lwc1 $f0, 8($s0)
/* 103A70 802E21F0 46040000 */ add.s $f0, $f0, $f4
/* 103A74 802E21F4 E6000008 */ swc1 $f0, 8($s0)
/* 103A78 802E21F8 C6220058 */ lwc1 $f2, 0x58($s1)
/* 103A7C 802E21FC 46001080 */ add.s $f2, $f2, $f0
/* 103A80 802E2200 E6220058 */ swc1 $f2, 0x58($s1)
/* 103A84 802E2204 C6000018 */ lwc1 $f0, 0x18($s0)
/* 103A88 802E2208 46060000 */ add.s $f0, $f0, $f6
/* 103A8C 802E220C 4602003E */ c.le.s $f0, $f2
/* 103A90 802E2210 080B88AB */ j .L802E22AC
/* 103A94 802E2214 00000000 */ nop
.L802E2218:
/* 103A98 802E2218 C602001C */ lwc1 $f2, 0x1c($s0)
/* 103A9C 802E221C 3C01802F */ lui $at, 0x802f
/* 103AA0 802E2220 D420B120 */ ldc1 $f0, -0x4ee0($at)
/* 103AA4 802E2224 460010A1 */ cvt.d.s $f2, $f2
.L802E2228:
/* 103AA8 802E2228 46201082 */ mul.d $f2, $f2, $f0
/* 103AAC 802E222C 00000000 */ nop
/* 103AB0 802E2230 C6000018 */ lwc1 $f0, 0x18($s0)
/* 103AB4 802E2234 462011A0 */ cvt.s.d $f6, $f2
/* 103AB8 802E2238 46060000 */ add.s $f0, $f0, $f6
/* 103ABC 802E223C C6220058 */ lwc1 $f2, 0x58($s1)
/* 103AC0 802E2240 46020001 */ sub.s $f0, $f0, $f2
/* 103AC4 802E2244 3C014014 */ lui $at, 0x4014
/* 103AC8 802E2248 44811800 */ mtc1 $at, $f3
/* 103ACC 802E224C 44801000 */ mtc1 $zero, $f2
/* 103AD0 802E2250 46000021 */ cvt.d.s $f0, $f0
/* 103AD4 802E2254 46220003 */ div.d $f0, $f0, $f2
/* 103AD8 802E2258 46200120 */ cvt.s.d $f4, $f0
/* 103ADC 802E225C 3C01802F */ lui $at, 0x802f
/* 103AE0 802E2260 D422B128 */ ldc1 $f2, -0x4ed8($at)
/* 103AE4 802E2264 46002021 */ cvt.d.s $f0, $f4
/* 103AE8 802E2268 4620103C */ c.lt.d $f2, $f0
/* 103AEC 802E226C 00000000 */ nop
/* 103AF0 802E2270 45000004 */ bc1f .L802E2284
/* 103AF4 802E2274 00000000 */ nop
/* 103AF8 802E2278 3C01BC23 */ lui $at, 0xbc23
/* 103AFC 802E227C 3421D70A */ ori $at, $at, 0xd70a
/* 103B00 802E2280 44812000 */ mtc1 $at, $f4
.L802E2284:
/* 103B04 802E2284 C6000008 */ lwc1 $f0, 8($s0)
/* 103B08 802E2288 46040000 */ add.s $f0, $f0, $f4
/* 103B0C 802E228C E6000008 */ swc1 $f0, 8($s0)
/* 103B10 802E2290 C6220058 */ lwc1 $f2, 0x58($s1)
/* 103B14 802E2294 46001080 */ add.s $f2, $f2, $f0
/* 103B18 802E2298 E6220058 */ swc1 $f2, 0x58($s1)
/* 103B1C 802E229C C6000018 */ lwc1 $f0, 0x18($s0)
/* 103B20 802E22A0 46060000 */ add.s $f0, $f0, $f6
/* 103B24 802E22A4 4600103E */ c.le.s $f2, $f0
/* 103B28 802E22A8 00000000 */ nop
.L802E22AC:
/* 103B2C 802E22AC 45000005 */ bc1f .L802E22C4
/* 103B30 802E22B0 00000000 */ nop
/* 103B34 802E22B4 92020011 */ lbu $v0, 0x11($s0)
/* 103B38 802E22B8 AE000008 */ sw $zero, 8($s0)
/* 103B3C 802E22BC 24420001 */ addiu $v0, $v0, 1
/* 103B40 802E22C0 A2020011 */ sb $v0, 0x11($s0)
.L802E22C4:
/* 103B44 802E22C4 0C0B854F */ jal func_802E153C
/* 103B48 802E22C8 0220202D */ daddu $a0, $s1, $zero
/* 103B4C 802E22CC 24020002 */ addiu $v0, $zero, 2
/* 103B50 802E22D0 16420004 */ bne $s2, $v0, .L802E22E4
/* 103B54 802E22D4 0220202D */ daddu $a0, $s1, $zero
/* 103B58 802E22D8 A2000010 */ sb $zero, 0x10($s0)
/* 103B5C 802E22DC 0C043F5A */ jal func_8010FD68
/* 103B60 802E22E0 A2000011 */ sb $zero, 0x11($s0)
.L802E22E4:
/* 103B64 802E22E4 96020024 */ lhu $v0, 0x24($s0)
/* 103B68 802E22E8 2403000A */ addiu $v1, $zero, 0xa
/* 103B6C 802E22EC 24420001 */ addiu $v0, $v0, 1
/* 103B70 802E22F0 A6020024 */ sh $v0, 0x24($s0)
/* 103B74 802E22F4 00021400 */ sll $v0, $v0, 0x10
/* 103B78 802E22F8 00021403 */ sra $v0, $v0, 0x10
/* 103B7C 802E22FC 1443000D */ bne $v0, $v1, .L802E2334
/* 103B80 802E2300 00000000 */ nop
/* 103B84 802E2304 8E020028 */ lw $v0, 0x28($s0)
/* 103B88 802E2308 1440000A */ bnez $v0, .L802E2334
/* 103B8C 802E230C 2402003C */ addiu $v0, $zero, 0x3c
/* 103B90 802E2310 3C013F80 */ lui $at, 0x3f80
/* 103B94 802E2314 44810000 */ mtc1 $at, $f0
/* 103B98 802E2318 AFA20014 */ sw $v0, 0x14($sp)
/* 103B9C 802E231C E7A00010 */ swc1 $f0, 0x10($sp)
/* 103BA0 802E2320 8E250048 */ lw $a1, 0x48($s1)
/* 103BA4 802E2324 8E26004C */ lw $a2, 0x4c($s1)
/* 103BA8 802E2328 8E270050 */ lw $a3, 0x50($s1)
/* 103BAC 802E232C 0C01C88C */ jal func_80072230
/* 103BB0 802E2330 0000202D */ daddu $a0, $zero, $zero
.L802E2334:
/* 103BB4 802E2334 8FBF0024 */ lw $ra, 0x24($sp)
/* 103BB8 802E2338 8FB20020 */ lw $s2, 0x20($sp)
/* 103BBC 802E233C 8FB1001C */ lw $s1, 0x1c($sp)
/* 103BC0 802E2340 8FB00018 */ lw $s0, 0x18($sp)
/* 103BC4 802E2344 03E00008 */ jr $ra
/* 103BC8 802E2348 27BD0028 */ addiu $sp, $sp, 0x28