papermario/asm/nonmatchings/code_182B30/func_80257DA4.s
2020-10-14 23:49:49 -04:00

1140 lines
58 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80257DA4
/* 186684 80257DA4 27BDFD18 */ addiu $sp, $sp, -0x2e8
/* 186688 80257DA8 AFB402B0 */ sw $s4, 0x2b0($sp)
/* 18668C 80257DAC 3C14800E */ lui $s4, %hi(gBattleStatus)
/* 186690 80257DB0 2694C070 */ addiu $s4, $s4, %lo(gBattleStatus)
/* 186694 80257DB4 AFBF02C4 */ sw $ra, 0x2c4($sp)
/* 186698 80257DB8 AFBE02C0 */ sw $fp, 0x2c0($sp)
/* 18669C 80257DBC AFB702BC */ sw $s7, 0x2bc($sp)
/* 1866A0 80257DC0 AFB602B8 */ sw $s6, 0x2b8($sp)
/* 1866A4 80257DC4 AFB502B4 */ sw $s5, 0x2b4($sp)
/* 1866A8 80257DC8 AFB302AC */ sw $s3, 0x2ac($sp)
/* 1866AC 80257DCC AFB202A8 */ sw $s2, 0x2a8($sp)
/* 1866B0 80257DD0 AFB102A4 */ sw $s1, 0x2a4($sp)
/* 1866B4 80257DD4 AFB002A0 */ sw $s0, 0x2a0($sp)
/* 1866B8 80257DD8 F7BA02E0 */ sdc1 $f26, 0x2e0($sp)
/* 1866BC 80257DDC F7B802D8 */ sdc1 $f24, 0x2d8($sp)
/* 1866C0 80257DE0 F7B602D0 */ sdc1 $f22, 0x2d0($sp)
/* 1866C4 80257DE4 F7B402C8 */ sdc1 $f20, 0x2c8($sp)
/* 1866C8 80257DE8 8E9600D8 */ lw $s6, 0xd8($s4)
/* 1866CC 80257DEC 8E9000DC */ lw $s0, 0xdc($s4)
/* 1866D0 80257DF0 8ED701F4 */ lw $s7, 0x1f4($s6)
/* 1866D4 80257DF4 C6C8018C */ lwc1 $f8, 0x18c($s6)
/* 1866D8 80257DF8 86C40150 */ lh $a0, 0x150($s6)
/* 1866DC 80257DFC C6C60144 */ lwc1 $f6, 0x144($s6)
/* 1866E0 80257E00 86C50152 */ lh $a1, 0x152($s6)
/* 1866E4 80257E04 C6C40148 */ lwc1 $f4, 0x148($s6)
/* 1866E8 80257E08 82C6019A */ lb $a2, 0x19a($s6)
/* 1866EC 80257E0C 86C70154 */ lh $a3, 0x154($s6)
/* 1866F0 80257E10 C6CA014C */ lwc1 $f10, 0x14c($s6)
/* 1866F4 80257E14 E6E80064 */ swc1 $f8, 0x64($s7)
/* 1866F8 80257E18 8EC20008 */ lw $v0, 8($s6)
/* 1866FC 80257E1C 82C30194 */ lb $v1, 0x194($s6)
/* 186700 80257E20 80420024 */ lb $v0, 0x24($v0)
/* 186704 80257E24 C6C00188 */ lwc1 $f0, 0x188($s6)
/* 186708 80257E28 00431021 */ addu $v0, $v0, $v1
/* 18670C 80257E2C 44821000 */ mtc1 $v0, $f2
/* 186710 80257E30 00000000 */ nop
/* 186714 80257E34 468010A0 */ cvt.s.w $f2, $f2
/* 186718 80257E38 46001082 */ mul.s $f2, $f2, $f0
/* 18671C 80257E3C 00000000 */ nop
/* 186720 80257E40 44840000 */ mtc1 $a0, $f0
/* 186724 80257E44 00000000 */ nop
/* 186728 80257E48 46800020 */ cvt.s.w $f0, $f0
/* 18672C 80257E4C 46003500 */ add.s $f20, $f6, $f0
/* 186730 80257E50 8EC20440 */ lw $v0, 0x440($s6)
/* 186734 80257E54 4602A080 */ add.s $f2, $f20, $f2
/* 186738 80257E58 8C42000C */ lw $v0, 0xc($v0)
/* 18673C 80257E5C E4420008 */ swc1 $f2, 8($v0)
/* 186740 80257E60 8EC20008 */ lw $v0, 8($s6)
/* 186744 80257E64 82C30195 */ lb $v1, 0x195($s6)
/* 186748 80257E68 80420025 */ lb $v0, 0x25($v0)
/* 18674C 80257E6C C6C00188 */ lwc1 $f0, 0x188($s6)
/* 186750 80257E70 00431021 */ addu $v0, $v0, $v1
/* 186754 80257E74 44821000 */ mtc1 $v0, $f2
/* 186758 80257E78 00000000 */ nop
/* 18675C 80257E7C 468010A0 */ cvt.s.w $f2, $f2
/* 186760 80257E80 46001082 */ mul.s $f2, $f2, $f0
/* 186764 80257E84 00000000 */ nop
/* 186768 80257E88 44850000 */ mtc1 $a1, $f0
/* 18676C 80257E8C 00000000 */ nop
/* 186770 80257E90 46800020 */ cvt.s.w $f0, $f0
/* 186774 80257E94 46002100 */ add.s $f4, $f4, $f0
/* 186778 80257E98 44860000 */ mtc1 $a2, $f0
/* 18677C 80257E9C 00000000 */ nop
/* 186780 80257EA0 46800020 */ cvt.s.w $f0, $f0
/* 186784 80257EA4 46002600 */ add.s $f24, $f4, $f0
/* 186788 80257EA8 8EC20440 */ lw $v0, 0x440($s6)
/* 18678C 80257EAC 4602C080 */ add.s $f2, $f24, $f2
/* 186790 80257EB0 8C42000C */ lw $v0, 0xc($v0)
/* 186794 80257EB4 44870000 */ mtc1 $a3, $f0
/* 186798 80257EB8 00000000 */ nop
/* 18679C 80257EBC 46800020 */ cvt.s.w $f0, $f0
/* 1867A0 80257EC0 E442000C */ swc1 $f2, 0xc($v0)
/* 1867A4 80257EC4 8EC20440 */ lw $v0, 0x440($s6)
/* 1867A8 80257EC8 46005580 */ add.s $f22, $f10, $f0
/* 1867AC 80257ECC 8C42000C */ lw $v0, 0xc($v0)
/* 1867B0 80257ED0 3C118011 */ lui $s1, %hi(gPlayerData)
/* 1867B4 80257ED4 2631F290 */ addiu $s1, $s1, %lo(gPlayerData)
/* 1867B8 80257ED8 E4560010 */ swc1 $f22, 0x10($v0)
/* 1867BC 80257EDC 8E820000 */ lw $v0, ($s4)
/* 1867C0 80257EE0 30420004 */ andi $v0, $v0, 4
/* 1867C4 80257EE4 1440001D */ bnez $v0, .L80257F5C
/* 1867C8 80257EE8 46004686 */ mov.s $f26, $f8
/* 1867CC 80257EEC 8EC20000 */ lw $v0, ($s6)
/* 1867D0 80257EF0 3C030800 */ lui $v1, 0x800
/* 1867D4 80257EF4 00431024 */ and $v0, $v0, $v1
/* 1867D8 80257EF8 10400018 */ beqz $v0, .L80257F5C
/* 1867DC 80257EFC 00000000 */ nop
/* 1867E0 80257F00 82C2021D */ lb $v0, 0x21d($s6)
/* 1867E4 80257F04 92C4021D */ lbu $a0, 0x21d($s6)
/* 1867E8 80257F08 10400008 */ beqz $v0, .L80257F2C
/* 1867EC 80257F0C 2482FFFF */ addiu $v0, $a0, -1
/* 1867F0 80257F10 8EC30440 */ lw $v1, 0x440($s6)
/* 1867F4 80257F14 3C01C47A */ lui $at, 0xc47a
/* 1867F8 80257F18 44810000 */ mtc1 $at, $f0
/* 1867FC 80257F1C A2C2021D */ sb $v0, 0x21d($s6)
/* 186800 80257F20 8C62000C */ lw $v0, 0xc($v1)
/* 186804 80257F24 08095FDE */ j .L80257F78
/* 186808 80257F28 E440000C */ swc1 $f0, 0xc($v0)
.L80257F2C:
/* 18680C 80257F2C C6C00188 */ lwc1 $f0, 0x188($s6)
/* 186810 80257F30 3C013FE8 */ lui $at, 0x3fe8
/* 186814 80257F34 44811800 */ mtc1 $at, $f3
/* 186818 80257F38 44801000 */ mtc1 $zero, $f2
/* 18681C 80257F3C 46000021 */ cvt.d.s $f0, $f0
/* 186820 80257F40 46220002 */ mul.d $f0, $f0, $f2
/* 186824 80257F44 00000000 */ nop
/* 186828 80257F48 8EC20440 */ lw $v0, 0x440($s6)
/* 18682C 80257F4C 8C42000C */ lw $v0, 0xc($v0)
/* 186830 80257F50 46200020 */ cvt.s.d $f0, $f0
/* 186834 80257F54 08095FDE */ j .L80257F78
/* 186838 80257F58 E4400034 */ swc1 $f0, 0x34($v0)
.L80257F5C:
/* 18683C 80257F5C 8EC20440 */ lw $v0, 0x440($s6)
/* 186840 80257F60 3C01C47A */ lui $at, 0xc47a
/* 186844 80257F64 44810000 */ mtc1 $at, $f0
/* 186848 80257F68 8C42000C */ lw $v0, 0xc($v0)
/* 18684C 80257F6C E440000C */ swc1 $f0, 0xc($v0)
/* 186850 80257F70 2402000A */ addiu $v0, $zero, 0xa
/* 186854 80257F74 A2C2021D */ sb $v0, 0x21d($s6)
.L80257F78:
/* 186858 80257F78 8282009D */ lb $v0, 0x9d($s4)
/* 18685C 80257F7C 1040001B */ beqz $v0, .L80257FEC
/* 186860 80257F80 00000000 */ nop
/* 186864 80257F84 3C03800E */ lui $v1, %hi(gBattleStatus)
/* 186868 80257F88 8C63C070 */ lw $v1, %lo(gBattleStatus)($v1)
/* 18686C 80257F8C 30620008 */ andi $v0, $v1, 8
/* 186870 80257F90 14400007 */ bnez $v0, .L80257FB0
/* 186874 80257F94 30620004 */ andi $v0, $v1, 4
/* 186878 80257F98 1440000B */ bnez $v0, .L80257FC8
/* 18687C 80257F9C 3C030800 */ lui $v1, 0x800
/* 186880 80257FA0 8EC20000 */ lw $v0, ($s6)
/* 186884 80257FA4 00431024 */ and $v0, $v0, $v1
/* 186888 80257FA8 10400007 */ beqz $v0, .L80257FC8
/* 18688C 80257FAC 00000000 */ nop
.L80257FB0:
/* 186890 80257FB0 8E8400A0 */ lw $a0, 0xa0($s4)
/* 186894 80257FB4 8C82000C */ lw $v0, 0xc($a0)
/* 186898 80257FB8 E4540004 */ swc1 $f20, 4($v0)
/* 18689C 80257FBC 8C82000C */ lw $v0, 0xc($a0)
/* 1868A0 80257FC0 08095FF9 */ j .L80257FE4
/* 1868A4 80257FC4 E4580008 */ swc1 $f24, 8($v0)
.L80257FC8:
/* 1868A8 80257FC8 8E8400A0 */ lw $a0, 0xa0($s4)
/* 1868AC 80257FCC 3C01C47A */ lui $at, 0xc47a
/* 1868B0 80257FD0 44810000 */ mtc1 $at, $f0
/* 1868B4 80257FD4 8C82000C */ lw $v0, 0xc($a0)
/* 1868B8 80257FD8 E4540004 */ swc1 $f20, 4($v0)
/* 1868BC 80257FDC 8C82000C */ lw $v0, 0xc($a0)
/* 1868C0 80257FE0 E4400008 */ swc1 $f0, 8($v0)
.L80257FE4:
/* 1868C4 80257FE4 8C82000C */ lw $v0, 0xc($a0)
/* 1868C8 80257FE8 E456000C */ swc1 $f22, 0xc($v0)
.L80257FEC:
/* 1868CC 80257FEC 828200A4 */ lb $v0, 0xa4($s4)
/* 1868D0 80257FF0 10400020 */ beqz $v0, .L80258074
/* 1868D4 80257FF4 00000000 */ nop
/* 1868D8 80257FF8 3C03800E */ lui $v1, %hi(gBattleStatus)
/* 1868DC 80257FFC 8C63C070 */ lw $v1, %lo(gBattleStatus)($v1)
/* 1868E0 80258000 30620008 */ andi $v0, $v1, 8
/* 1868E4 80258004 14400007 */ bnez $v0, .L80258024
/* 1868E8 80258008 30620004 */ andi $v0, $v1, 4
/* 1868EC 8025800C 14400010 */ bnez $v0, .L80258050
/* 1868F0 80258010 3C030800 */ lui $v1, 0x800
/* 1868F4 80258014 8EC20000 */ lw $v0, ($s6)
/* 1868F8 80258018 00431024 */ and $v0, $v0, $v1
/* 1868FC 8025801C 1040000C */ beqz $v0, .L80258050
/* 186900 80258020 00000000 */ nop
.L80258024:
/* 186904 80258024 8E8400A8 */ lw $a0, 0xa8($s4)
/* 186908 80258028 8C82000C */ lw $v0, 0xc($a0)
/* 18690C 8025802C E4540004 */ swc1 $f20, 4($v0)
/* 186910 80258030 8C82000C */ lw $v0, 0xc($a0)
/* 186914 80258034 E4580008 */ swc1 $f24, 8($v0)
/* 186918 80258038 8C82000C */ lw $v0, 0xc($a0)
/* 18691C 8025803C E456000C */ swc1 $f22, 0xc($v0)
/* 186920 80258040 8C82000C */ lw $v0, 0xc($a0)
/* 186924 80258044 C6C00188 */ lwc1 $f0, 0x188($s6)
/* 186928 80258048 0809601D */ j .L80258074
/* 18692C 8025804C E4400010 */ swc1 $f0, 0x10($v0)
.L80258050:
/* 186930 80258050 8E8400A8 */ lw $a0, 0xa8($s4)
/* 186934 80258054 3C01C47A */ lui $at, 0xc47a
/* 186938 80258058 44810000 */ mtc1 $at, $f0
/* 18693C 8025805C 8C82000C */ lw $v0, 0xc($a0)
/* 186940 80258060 E4540004 */ swc1 $f20, 4($v0)
/* 186944 80258064 8C82000C */ lw $v0, 0xc($a0)
/* 186948 80258068 E4400008 */ swc1 $f0, 8($v0)
/* 18694C 8025806C 8C82000C */ lw $v0, 0xc($a0)
/* 186950 80258070 E456000C */ swc1 $f22, 0xc($v0)
.L80258074:
/* 186954 80258074 82C30210 */ lb $v1, 0x210($s6)
/* 186958 80258078 24020007 */ addiu $v0, $zero, 7
/* 18695C 8025807C 1462002E */ bne $v1, $v0, .L80258138
/* 186960 80258080 00000000 */ nop
/* 186964 80258084 8EC40228 */ lw $a0, 0x228($s6)
/* 186968 80258088 10800022 */ beqz $a0, .L80258114
/* 18696C 8025808C 00000000 */ nop
/* 186970 80258090 3C03800E */ lui $v1, %hi(gBattleStatus)
/* 186974 80258094 8C63C070 */ lw $v1, %lo(gBattleStatus)($v1)
/* 186978 80258098 30620008 */ andi $v0, $v1, 8
/* 18697C 8025809C 14400007 */ bnez $v0, .L802580BC
/* 186980 802580A0 30620004 */ andi $v0, $v1, 4
/* 186984 802580A4 1440001B */ bnez $v0, .L80258114
/* 186988 802580A8 3C030800 */ lui $v1, 0x800
/* 18698C 802580AC 8EC20000 */ lw $v0, ($s6)
/* 186990 802580B0 00431024 */ and $v0, $v0, $v1
/* 186994 802580B4 10400017 */ beqz $v0, .L80258114
/* 186998 802580B8 00000000 */ nop
.L802580BC:
/* 18699C 802580BC 3C014100 */ lui $at, 0x4100
/* 1869A0 802580C0 44810000 */ mtc1 $at, $f0
/* 1869A4 802580C4 00000000 */ nop
/* 1869A8 802580C8 4600A001 */ sub.s $f0, $f20, $f0
/* 1869AC 802580CC 8C82000C */ lw $v0, 0xc($a0)
/* 1869B0 802580D0 E4400004 */ swc1 $f0, 4($v0)
/* 1869B4 802580D4 8C82000C */ lw $v0, 0xc($a0)
/* 1869B8 802580D8 E4580008 */ swc1 $f24, 8($v0)
/* 1869BC 802580DC 8C82000C */ lw $v0, 0xc($a0)
/* 1869C0 802580E0 E456000C */ swc1 $f22, 0xc($v0)
/* 1869C4 802580E4 92C20191 */ lbu $v0, 0x191($s6)
/* 1869C8 802580E8 3C014038 */ lui $at, 0x4038
/* 1869CC 802580EC 44811800 */ mtc1 $at, $f3
/* 1869D0 802580F0 44801000 */ mtc1 $zero, $f2
/* 1869D4 802580F4 44820000 */ mtc1 $v0, $f0
/* 1869D8 802580F8 00000000 */ nop
/* 1869DC 802580FC 46800021 */ cvt.d.w $f0, $f0
/* 1869E0 80258100 46220003 */ div.d $f0, $f0, $f2
/* 1869E4 80258104 8C82000C */ lw $v0, 0xc($a0)
/* 1869E8 80258108 46200020 */ cvt.s.d $f0, $f0
/* 1869EC 8025810C 08096055 */ j .L80258154
/* 1869F0 80258110 E4400020 */ swc1 $f0, 0x20($v0)
.L80258114:
/* 1869F4 80258114 8C82000C */ lw $v0, 0xc($a0)
/* 1869F8 80258118 3C01C47A */ lui $at, 0xc47a
/* 1869FC 8025811C 44810000 */ mtc1 $at, $f0
/* 186A00 80258120 AC400004 */ sw $zero, 4($v0)
/* 186A04 80258124 8C82000C */ lw $v0, 0xc($a0)
/* 186A08 80258128 E4400008 */ swc1 $f0, 8($v0)
/* 186A0C 8025812C 8C82000C */ lw $v0, 0xc($a0)
/* 186A10 80258130 08096055 */ j .L80258154
/* 186A14 80258134 AC40000C */ sw $zero, 0xc($v0)
.L80258138:
/* 186A18 80258138 8EC40228 */ lw $a0, 0x228($s6)
/* 186A1C 8025813C 10800005 */ beqz $a0, .L80258154
/* 186A20 80258140 00000000 */ nop
/* 186A24 80258144 8C820000 */ lw $v0, ($a0)
/* 186A28 80258148 34420010 */ ori $v0, $v0, 0x10
/* 186A2C 8025814C AC820000 */ sw $v0, ($a0)
/* 186A30 80258150 AEC00228 */ sw $zero, 0x228($s6)
.L80258154:
/* 186A34 80258154 3C04800E */ lui $a0, %hi(gBattleStatus)
/* 186A38 80258158 2484C070 */ addiu $a0, $a0, %lo(gBattleStatus)
/* 186A3C 8025815C 8C820004 */ lw $v0, 4($a0)
/* 186A40 80258160 3C030001 */ lui $v1, 1
/* 186A44 80258164 00431024 */ and $v0, $v0, $v1
/* 186A48 80258168 1440001A */ bnez $v0, .L802581D4
/* 186A4C 8025816C 00000000 */ nop
/* 186A50 80258170 8C820000 */ lw $v0, ($a0)
/* 186A54 80258174 30420004 */ andi $v0, $v0, 4
/* 186A58 80258178 14400016 */ bnez $v0, .L802581D4
/* 186A5C 8025817C 3C030800 */ lui $v1, 0x800
/* 186A60 80258180 8EC20000 */ lw $v0, ($s6)
/* 186A64 80258184 00431024 */ and $v0, $v0, $v1
/* 186A68 80258188 10400012 */ beqz $v0, .L802581D4
/* 186A6C 8025818C 00000000 */ nop
/* 186A70 80258190 8E82043C */ lw $v0, 0x43c($s4)
/* 186A74 80258194 8C43000C */ lw $v1, 0xc($v0)
/* 186A78 80258198 24020001 */ addiu $v0, $zero, 1
/* 186A7C 8025819C 08096078 */ j .L802581E0
/* 186A80 802581A0 A4620002 */ sh $v0, 2($v1)
.L802581A4:
/* 186A84 802581A4 C6C00188 */ lwc1 $f0, 0x188($s6)
/* 186A88 802581A8 3C01802A */ lui $at, 0x802a
/* 186A8C 802581AC D422D388 */ ldc1 $f2, -0x2c78($at)
/* 186A90 802581B0 46000021 */ cvt.d.s $f0, $f0
/* 186A94 802581B4 46201081 */ sub.d $f2, $f2, $f0
/* 186A98 802581B8 3C014018 */ lui $at, 0x4018
/* 186A9C 802581BC 44812800 */ mtc1 $at, $f5
/* 186AA0 802581C0 44802000 */ mtc1 $zero, $f4
/* 186AA4 802581C4 00000000 */ nop
/* 186AA8 802581C8 46241083 */ div.d $f2, $f2, $f4
/* 186AAC 802581CC 08096088 */ j .L80258220
/* 186AB0 802581D0 46220000 */ add.d $f0, $f0, $f2
.L802581D4:
/* 186AB4 802581D4 8E82043C */ lw $v0, 0x43c($s4)
/* 186AB8 802581D8 8C42000C */ lw $v0, 0xc($v0)
/* 186ABC 802581DC A4400002 */ sh $zero, 2($v0)
.L802581E0:
/* 186AC0 802581E0 82C30210 */ lb $v1, 0x210($s6)
/* 186AC4 802581E4 2402000A */ addiu $v0, $zero, 0xa
/* 186AC8 802581E8 1062FFEE */ beq $v1, $v0, .L802581A4
/* 186ACC 802581EC 00000000 */ nop
/* 186AD0 802581F0 C6C00188 */ lwc1 $f0, 0x188($s6)
/* 186AD4 802581F4 3C013FF0 */ lui $at, 0x3ff0
/* 186AD8 802581F8 44812800 */ mtc1 $at, $f5
/* 186ADC 802581FC 44802000 */ mtc1 $zero, $f4
/* 186AE0 80258200 46000021 */ cvt.d.s $f0, $f0
/* 186AE4 80258204 46202101 */ sub.d $f4, $f4, $f0
/* 186AE8 80258208 3C014018 */ lui $at, 0x4018
/* 186AEC 8025820C 44811800 */ mtc1 $at, $f3
/* 186AF0 80258210 44801000 */ mtc1 $zero, $f2
/* 186AF4 80258214 00000000 */ nop
/* 186AF8 80258218 46222103 */ div.d $f4, $f4, $f2
/* 186AFC 8025821C 46240000 */ add.d $f0, $f0, $f4
.L80258220:
/* 186B00 80258220 46200020 */ cvt.s.d $f0, $f0
/* 186B04 80258224 E6C00188 */ swc1 $f0, 0x188($s6)
/* 186B08 80258228 8EC20000 */ lw $v0, ($s6)
/* 186B0C 8025822C 3C030800 */ lui $v1, 0x800
/* 186B10 80258230 00431024 */ and $v0, $v0, $v1
/* 186B14 80258234 10400019 */ beqz $v0, .L8025829C
/* 186B18 80258238 00000000 */ nop
/* 186B1C 8025823C 82820096 */ lb $v0, 0x96($s4)
/* 186B20 80258240 18400007 */ blez $v0, .L80258260
/* 186B24 80258244 00000000 */ nop
/* 186B28 80258248 0C011F4C */ jal func_80047D30
/* 186B2C 8025824C 86C40436 */ lh $a0, 0x436($s6)
/* 186B30 80258250 0C011F29 */ jal func_80047CA4
/* 186B34 80258254 86C40436 */ lh $a0, 0x436($s6)
/* 186B38 80258258 0809609A */ j .L80258268
/* 186B3C 8025825C 00000000 */ nop
.L80258260:
/* 186B40 80258260 0C011F70 */ jal func_80047DC0
/* 186B44 80258264 86C40436 */ lh $a0, 0x436($s6)
.L80258268:
/* 186B48 80258268 82820097 */ lb $v0, 0x97($s4)
/* 186B4C 8025826C 18400007 */ blez $v0, .L8025828C
/* 186B50 80258270 00000000 */ nop
/* 186B54 80258274 0C011F05 */ jal func_80047C14
/* 186B58 80258278 86C40436 */ lh $a0, 0x436($s6)
/* 186B5C 8025827C 0C011F70 */ jal func_80047DC0
/* 186B60 80258280 86C40436 */ lh $a0, 0x436($s6)
/* 186B64 80258284 080960AB */ j .L802582AC
/* 186B68 80258288 00000000 */ nop
.L8025828C:
/* 186B6C 8025828C 0C011F29 */ jal func_80047CA4
/* 186B70 80258290 86C40436 */ lh $a0, 0x436($s6)
/* 186B74 80258294 080960AB */ j .L802582AC
/* 186B78 80258298 00000000 */ nop
.L8025829C:
/* 186B7C 8025829C 0C011F40 */ jal func_80047D00
/* 186B80 802582A0 86C40436 */ lh $a0, 0x436($s6)
/* 186B84 802582A4 0C011F87 */ jal func_80047E1C
/* 186B88 802582A8 86C40436 */ lh $a0, 0x436($s6)
.L802582AC:
/* 186B8C 802582AC 8EC20000 */ lw $v0, ($s6)
/* 186B90 802582B0 3C030800 */ lui $v1, 0x800
/* 186B94 802582B4 00431024 */ and $v0, $v0, $v1
/* 186B98 802582B8 1040001C */ beqz $v0, .L8025832C
/* 186B9C 802582BC 00000000 */ nop
/* 186BA0 802582C0 3C02800E */ lui $v0, 0x800e
/* 186BA4 802582C4 8C42C074 */ lw $v0, -0x3f8c($v0)
/* 186BA8 802582C8 30420040 */ andi $v0, $v0, 0x40
/* 186BAC 802582CC 14400017 */ bnez $v0, .L8025832C
/* 186BB0 802582D0 00000000 */ nop
/* 186BB4 802582D4 82220002 */ lb $v0, 2($s1)
/* 186BB8 802582D8 28420002 */ slti $v0, $v0, 2
/* 186BBC 802582DC 14400009 */ bnez $v0, .L80258304
/* 186BC0 802582E0 00000000 */ nop
/* 186BC4 802582E4 0C01203D */ jal func_800480F4
/* 186BC8 802582E8 86C40436 */ lh $a0, 0x436($s6)
/* 186BCC 802582EC 82220002 */ lb $v0, 2($s1)
/* 186BD0 802582F0 28420006 */ slti $v0, $v0, 6
/* 186BD4 802582F4 14400007 */ bnez $v0, .L80258314
/* 186BD8 802582F8 00000000 */ nop
/* 186BDC 802582FC 080960CD */ j .L80258334
/* 186BE0 80258300 00000000 */ nop
.L80258304:
/* 186BE4 80258304 0C012019 */ jal func_80048064
/* 186BE8 80258308 86C40436 */ lh $a0, 0x436($s6)
/* 186BEC 8025830C 080960CD */ j .L80258334
/* 186BF0 80258310 00000000 */ nop
.L80258314:
/* 186BF4 80258314 0C01205C */ jal func_80048170
/* 186BF8 80258318 86C40436 */ lh $a0, 0x436($s6)
/* 186BFC 8025831C 0C01203D */ jal func_800480F4
/* 186C00 80258320 86C40436 */ lh $a0, 0x436($s6)
/* 186C04 80258324 080960CF */ j .L8025833C
/* 186C08 80258328 00000000 */ nop
.L8025832C:
/* 186C0C 8025832C 0C01203D */ jal func_800480F4
/* 186C10 80258330 86C40436 */ lh $a0, 0x436($s6)
.L80258334:
/* 186C14 80258334 0C012080 */ jal func_80048200
/* 186C18 80258338 86C40436 */ lh $a0, 0x436($s6)
.L8025833C:
/* 186C1C 8025833C 82C30218 */ lb $v1, 0x218($s6)
/* 186C20 80258340 2402000E */ addiu $v0, $zero, 0xe
/* 186C24 80258344 1462000C */ bne $v1, $v0, .L80258378
/* 186C28 80258348 2403FEFF */ addiu $v1, $zero, -0x101
/* 186C2C 8025834C 8EE20000 */ lw $v0, ($s7)
/* 186C30 80258350 080960E0 */ j .L80258380
/* 186C34 80258354 34420100 */ ori $v0, $v0, 0x100
.L80258358:
/* 186C38 80258358 0C099751 */ jal func_80265D44
/* 186C3C 8025835C 24040008 */ addiu $a0, $zero, 8
/* 186C40 80258360 AEE20088 */ sw $v0, 0x88($s7)
/* 186C44 80258364 86C40436 */ lh $a0, 0x436($s6)
/* 186C48 80258368 0C011E08 */ jal func_80047820
/* 186C4C 8025836C 24050008 */ addiu $a1, $zero, 8
/* 186C50 80258370 08096272 */ j .L802589C8
/* 186C54 80258374 00000000 */ nop
.L80258378:
/* 186C58 80258378 8EE20000 */ lw $v0, ($s7)
/* 186C5C 8025837C 00431024 */ and $v0, $v0, $v1
.L80258380:
/* 186C60 80258380 AEE20000 */ sw $v0, ($s7)
/* 186C64 80258384 0000882D */ daddu $s1, $zero, $zero
/* 186C68 80258388 0220902D */ daddu $s2, $s1, $zero
/* 186C6C 8025838C 0220982D */ daddu $s3, $s1, $zero
/* 186C70 80258390 8EFE0088 */ lw $fp, 0x88($s7)
/* 186C74 80258394 3C02800E */ lui $v0, 0x800e
/* 186C78 80258398 8C42C074 */ lw $v0, -0x3f8c($v0)
/* 186C7C 8025839C 24030002 */ addiu $v1, $zero, 2
/* 186C80 802583A0 3042000A */ andi $v0, $v0, 0xa
/* 186C84 802583A4 14430003 */ bne $v0, $v1, .L802583B4
/* 186C88 802583A8 0220A82D */ daddu $s5, $s1, $zero
/* 186C8C 802583AC 16000004 */ bnez $s0, .L802583C0
/* 186C90 802583B0 00000000 */ nop
.L802583B4:
/* 186C94 802583B4 8282009A */ lb $v0, 0x9a($s4)
/* 186C98 802583B8 18400047 */ blez $v0, .L802584D8
/* 186C9C 802583BC 00000000 */ nop
.L802583C0:
/* 186CA0 802583C0 8EC20000 */ lw $v0, ($s6)
/* 186CA4 802583C4 3C032000 */ lui $v1, 0x2000
/* 186CA8 802583C8 00431024 */ and $v0, $v0, $v1
/* 186CAC 802583CC 14400042 */ bnez $v0, .L802584D8
/* 186CB0 802583D0 00000000 */ nop
/* 186CB4 802583D4 12000005 */ beqz $s0, .L802583EC
/* 186CB8 802583D8 3C030020 */ lui $v1, 0x20
/* 186CBC 802583DC 8E020000 */ lw $v0, ($s0)
/* 186CC0 802583E0 00431024 */ and $v0, $v0, $v1
/* 186CC4 802583E4 1440003C */ bnez $v0, .L802584D8
/* 186CC8 802583E8 00000000 */ nop
.L802583EC:
/* 186CCC 802583EC 3C04800E */ lui $a0, 0x800e
/* 186CD0 802583F0 8C84C074 */ lw $a0, -0x3f8c($a0)
/* 186CD4 802583F4 3C020010 */ lui $v0, 0x10
/* 186CD8 802583F8 00821024 */ and $v0, $a0, $v0
/* 186CDC 802583FC 14400036 */ bnez $v0, .L802584D8
/* 186CE0 80258400 24020003 */ addiu $v0, $zero, 3
/* 186CE4 80258404 82C30210 */ lb $v1, 0x210($s6)
/* 186CE8 80258408 10620027 */ beq $v1, $v0, .L802584A8
/* 186CEC 8025840C 24020005 */ addiu $v0, $zero, 5
/* 186CF0 80258410 10620025 */ beq $v1, $v0, .L802584A8
/* 186CF4 80258414 24020007 */ addiu $v0, $zero, 7
/* 186CF8 80258418 10620023 */ beq $v1, $v0, .L802584A8
/* 186CFC 8025841C 24020008 */ addiu $v0, $zero, 8
/* 186D00 80258420 10620021 */ beq $v1, $v0, .L802584A8
/* 186D04 80258424 2402000E */ addiu $v0, $zero, 0xe
/* 186D08 80258428 82C30218 */ lb $v1, 0x218($s6)
/* 186D0C 8025842C 1062001D */ beq $v1, $v0, .L802584A4
/* 186D10 80258430 2402000C */ addiu $v0, $zero, 0xc
/* 186D14 80258434 82C30214 */ lb $v1, 0x214($s6)
/* 186D18 80258438 1062001A */ beq $v1, $v0, .L802584A4
/* 186D1C 8025843C 00000000 */ nop
/* 186D20 80258440 8282009A */ lb $v0, 0x9a($s4)
/* 186D24 80258444 1C400003 */ bgtz $v0, .L80258454
/* 186D28 80258448 30820002 */ andi $v0, $a0, 2
/* 186D2C 8025844C 10400015 */ beqz $v0, .L802584A4
/* 186D30 80258450 00000000 */ nop
.L80258454:
/* 186D34 80258454 0C03A752 */ jal is_ability_active
/* 186D38 80258458 24040015 */ addiu $a0, $zero, 0x15
/* 186D3C 8025845C 1440000A */ bnez $v0, .L80258488
/* 186D40 80258460 24040013 */ addiu $a0, $zero, 0x13
/* 186D44 80258464 82C30210 */ lb $v1, 0x210($s6)
/* 186D48 80258468 24020006 */ addiu $v0, $zero, 6
/* 186D4C 8025846C 14620003 */ bne $v1, $v0, .L8025847C
/* 186D50 80258470 24020004 */ addiu $v0, $zero, 4
/* 186D54 80258474 08096122 */ j .L80258488
/* 186D58 80258478 24040015 */ addiu $a0, $zero, 0x15
.L8025847C:
/* 186D5C 8025847C 14620002 */ bne $v1, $v0, .L80258488
/* 186D60 80258480 24040012 */ addiu $a0, $zero, 0x12
/* 186D64 80258484 24040018 */ addiu $a0, $zero, 0x18
.L80258488:
/* 186D68 80258488 0C099751 */ jal func_80265D44
/* 186D6C 8025848C 24110001 */ addiu $s1, $zero, 1
/* 186D70 80258490 AEE20088 */ sw $v0, 0x88($s7)
/* 186D74 80258494 8EE50088 */ lw $a1, 0x88($s7)
/* 186D78 80258498 8EE60090 */ lw $a2, 0x90($s7)
/* 186D7C 8025849C 0C0B76A3 */ jal func_802DDA8C
/* 186D80 802584A0 0000202D */ daddu $a0, $zero, $zero
.L802584A4:
/* 186D84 802584A4 82C30210 */ lb $v1, 0x210($s6)
.L802584A8:
/* 186D88 802584A8 24020009 */ addiu $v0, $zero, 9
/* 186D8C 802584AC 10620003 */ beq $v1, $v0, .L802584BC
/* 186D90 802584B0 02C0202D */ daddu $a0, $s6, $zero
/* 186D94 802584B4 08096130 */ j .L802584C0
/* 186D98 802584B8 2405000C */ addiu $a1, $zero, 0xc
.L802584BC:
/* 186D9C 802584BC 2405000D */ addiu $a1, $zero, 0xd
.L802584C0:
/* 186DA0 802584C0 0C099B6B */ jal func_80266DAC
/* 186DA4 802584C4 24120001 */ addiu $s2, $zero, 1
/* 186DA8 802584C8 02C0202D */ daddu $a0, $s6, $zero
/* 186DAC 802584CC 0C099BBA */ jal func_80266EE8
/* 186DB0 802584D0 0000282D */ daddu $a1, $zero, $zero
/* 186DB4 802584D4 0240982D */ daddu $s3, $s2, $zero
.L802584D8:
/* 186DB8 802584D8 82C30214 */ lb $v1, 0x214($s6)
/* 186DBC 802584DC 2402000C */ addiu $v0, $zero, 0xc
/* 186DC0 802584E0 1462001C */ bne $v1, $v0, .L80258554
/* 186DC4 802584E4 00000000 */ nop
/* 186DC8 802584E8 0C099751 */ jal func_80265D44
/* 186DCC 802584EC 0040202D */ daddu $a0, $v0, $zero
/* 186DD0 802584F0 0000202D */ daddu $a0, $zero, $zero
/* 186DD4 802584F4 0040282D */ daddu $a1, $v0, $zero
/* 186DD8 802584F8 8EE60090 */ lw $a2, 0x90($s7)
/* 186DDC 802584FC 24110001 */ addiu $s1, $zero, 1
/* 186DE0 80258500 0C0B76A3 */ jal func_802DDA8C
/* 186DE4 80258504 AEE50088 */ sw $a1, 0x88($s7)
/* 186DE8 80258508 16400004 */ bnez $s2, .L8025851C
/* 186DEC 8025850C 02C0202D */ daddu $a0, $s6, $zero
/* 186DF0 80258510 0C099B6B */ jal func_80266DAC
/* 186DF4 80258514 0000282D */ daddu $a1, $zero, $zero
/* 186DF8 80258518 02C0202D */ daddu $a0, $s6, $zero
.L8025851C:
/* 186DFC 8025851C 0C099BBA */ jal func_80266EE8
/* 186E00 80258520 0000282D */ daddu $a1, $zero, $zero
/* 186E04 80258524 86C40436 */ lh $a0, 0x436($s6)
/* 186E08 80258528 0C011E3E */ jal func_800478F8
/* 186E0C 8025852C 24120001 */ addiu $s2, $zero, 1
/* 186E10 80258530 86C40436 */ lh $a0, 0x436($s6)
/* 186E14 80258534 0C011E80 */ jal func_80047A00
/* 186E18 80258538 0240982D */ daddu $s3, $s2, $zero
/* 186E1C 8025853C 86C40436 */ lh $a0, 0x436($s6)
/* 186E20 80258540 0C011EC2 */ jal func_80047B08
/* 186E24 80258544 0240A82D */ daddu $s5, $s2, $zero
/* 186E28 80258548 86C40436 */ lh $a0, 0x436($s6)
/* 186E2C 8025854C 0C011EF9 */ jal func_80047BE4
/* 186E30 80258550 00000000 */ nop
.L80258554:
/* 186E34 80258554 8EC20000 */ lw $v0, ($s6)
/* 186E38 80258558 3C030400 */ lui $v1, 0x400
/* 186E3C 8025855C 00431024 */ and $v0, $v0, $v1
/* 186E40 80258560 1040000B */ beqz $v0, .L80258590
/* 186E44 80258564 00000000 */ nop
/* 186E48 80258568 16200009 */ bnez $s1, .L80258590
/* 186E4C 8025856C 00000000 */ nop
/* 186E50 80258570 8EF00088 */ lw $s0, 0x88($s7)
/* 186E54 80258574 0C099751 */ jal func_80265D44
/* 186E58 80258578 2404000C */ addiu $a0, $zero, 0xc
/* 186E5C 8025857C 16020004 */ bne $s0, $v0, .L80258590
/* 186E60 80258580 00000000 */ nop
/* 186E64 80258584 0C099751 */ jal func_80265D44
/* 186E68 80258588 24040001 */ addiu $a0, $zero, 1
/* 186E6C 8025858C AEE20088 */ sw $v0, 0x88($s7)
.L80258590:
/* 186E70 80258590 0C03A752 */ jal is_ability_active
/* 186E74 80258594 24040015 */ addiu $a0, $zero, 0x15
/* 186E78 80258598 10400007 */ beqz $v0, .L802585B8
/* 186E7C 8025859C 00000000 */ nop
/* 186E80 802585A0 16400005 */ bnez $s2, .L802585B8
/* 186E84 802585A4 24120001 */ addiu $s2, $zero, 1
/* 186E88 802585A8 02C0202D */ daddu $a0, $s6, $zero
/* 186E8C 802585AC 0C099B6B */ jal func_80266DAC
/* 186E90 802585B0 24050008 */ addiu $a1, $zero, 8
/* 186E94 802585B4 24120001 */ addiu $s2, $zero, 1
.L802585B8:
/* 186E98 802585B8 82C30210 */ lb $v1, 0x210($s6)
/* 186E9C 802585BC 24020009 */ addiu $v0, $zero, 9
/* 186EA0 802585C0 14620009 */ bne $v1, $v0, .L802585E8
/* 186EA4 802585C4 24020005 */ addiu $v0, $zero, 5
/* 186EA8 802585C8 16400007 */ bnez $s2, .L802585E8
/* 186EAC 802585CC 24120001 */ addiu $s2, $zero, 1
/* 186EB0 802585D0 02C0202D */ daddu $a0, $s6, $zero
/* 186EB4 802585D4 0C099B6B */ jal func_80266DAC
/* 186EB8 802585D8 24050006 */ addiu $a1, $zero, 6
/* 186EBC 802585DC 24120001 */ addiu $s2, $zero, 1
/* 186EC0 802585E0 82C30210 */ lb $v1, 0x210($s6)
/* 186EC4 802585E4 24020005 */ addiu $v0, $zero, 5
.L802585E8:
/* 186EC8 802585E8 14620007 */ bne $v1, $v0, .L80258608
/* 186ECC 802585EC 00000000 */ nop
/* 186ED0 802585F0 16400005 */ bnez $s2, .L80258608
/* 186ED4 802585F4 24120001 */ addiu $s2, $zero, 1
/* 186ED8 802585F8 02C0202D */ daddu $a0, $s6, $zero
/* 186EDC 802585FC 0C099B6B */ jal func_80266DAC
/* 186EE0 80258600 24050007 */ addiu $a1, $zero, 7
/* 186EE4 80258604 24120001 */ addiu $s2, $zero, 1
.L80258608:
/* 186EE8 80258608 82C30212 */ lb $v1, 0x212($s6)
/* 186EEC 8025860C 2402000B */ addiu $v0, $zero, 0xb
/* 186EF0 80258610 14620007 */ bne $v1, $v0, .L80258630
/* 186EF4 80258614 00000000 */ nop
/* 186EF8 80258618 16400005 */ bnez $s2, .L80258630
/* 186EFC 8025861C 24120001 */ addiu $s2, $zero, 1
/* 186F00 80258620 02C0202D */ daddu $a0, $s6, $zero
/* 186F04 80258624 0C099B6B */ jal func_80266DAC
/* 186F08 80258628 24050004 */ addiu $a1, $zero, 4
/* 186F0C 8025862C 24120001 */ addiu $s2, $zero, 1
.L80258630:
/* 186F10 80258630 8282009B */ lb $v0, 0x9b($s4)
/* 186F14 80258634 10400007 */ beqz $v0, .L80258654
/* 186F18 80258638 00000000 */ nop
/* 186F1C 8025863C 16600005 */ bnez $s3, .L80258654
/* 186F20 80258640 24130001 */ addiu $s3, $zero, 1
/* 186F24 80258644 02C0202D */ daddu $a0, $s6, $zero
/* 186F28 80258648 0C099BBA */ jal func_80266EE8
/* 186F2C 8025864C 2405000B */ addiu $a1, $zero, 0xb
/* 186F30 80258650 24130001 */ addiu $s3, $zero, 1
.L80258654:
/* 186F34 80258654 0C03A752 */ jal is_ability_active
/* 186F38 80258658 24040013 */ addiu $a0, $zero, 0x13
/* 186F3C 8025865C 10400007 */ beqz $v0, .L8025867C
/* 186F40 80258660 00000000 */ nop
/* 186F44 80258664 16400005 */ bnez $s2, .L8025867C
/* 186F48 80258668 24120001 */ addiu $s2, $zero, 1
/* 186F4C 8025866C 02C0202D */ daddu $a0, $s6, $zero
/* 186F50 80258670 0C099B6B */ jal func_80266DAC
/* 186F54 80258674 24050004 */ addiu $a1, $zero, 4
/* 186F58 80258678 24120001 */ addiu $s2, $zero, 1
.L8025867C:
/* 186F5C 8025867C 16400003 */ bnez $s2, .L8025868C
/* 186F60 80258680 02C0202D */ daddu $a0, $s6, $zero
/* 186F64 80258684 0C099B6B */ jal func_80266DAC
/* 186F68 80258688 0000282D */ daddu $a1, $zero, $zero
.L8025868C:
/* 186F6C 8025868C 16600003 */ bnez $s3, .L8025869C
/* 186F70 80258690 02C0202D */ daddu $a0, $s6, $zero
/* 186F74 80258694 0C099BBA */ jal func_80266EE8
/* 186F78 80258698 0000282D */ daddu $a1, $zero, $zero
.L8025869C:
/* 186F7C 8025869C 8EC20000 */ lw $v0, ($s6)
/* 186F80 802586A0 3C030400 */ lui $v1, 0x400
/* 186F84 802586A4 00431024 */ and $v0, $v0, $v1
/* 186F88 802586A8 1040007D */ beqz $v0, .L802588A0
/* 186F8C 802586AC 00000000 */ nop
/* 186F90 802586B0 8282008B */ lb $v0, 0x8b($s4)
/* 186F94 802586B4 10400015 */ beqz $v0, .L8025870C
/* 186F98 802586B8 00000000 */ nop
/* 186F9C 802586BC 0C099751 */ jal func_80265D44
/* 186FA0 802586C0 24040019 */ addiu $a0, $zero, 0x19
/* 186FA4 802586C4 AEE20088 */ sw $v0, 0x88($s7)
/* 186FA8 802586C8 080961CF */ j .L8025873C
/* 186FAC 802586CC 24110001 */ addiu $s1, $zero, 1
.L802586D0:
/* 186FB0 802586D0 86C40436 */ lh $a0, 0x436($s6)
/* 186FB4 802586D4 08096241 */ j .L80258904
/* 186FB8 802586D8 24050009 */ addiu $a1, $zero, 9
.L802586DC:
/* 186FBC 802586DC 86C40436 */ lh $a0, 0x436($s6)
/* 186FC0 802586E0 08096241 */ j .L80258904
/* 186FC4 802586E4 24050006 */ addiu $a1, $zero, 6
.L802586E8:
/* 186FC8 802586E8 86C40436 */ lh $a0, 0x436($s6)
/* 186FCC 802586EC 08096241 */ j .L80258904
/* 186FD0 802586F0 24050005 */ addiu $a1, $zero, 5
.L802586F4:
/* 186FD4 802586F4 86C40436 */ lh $a0, 0x436($s6)
/* 186FD8 802586F8 08096241 */ j .L80258904
/* 186FDC 802586FC 24050004 */ addiu $a1, $zero, 4
.L80258700:
/* 186FE0 80258700 86C40436 */ lh $a0, 0x436($s6)
/* 186FE4 80258704 08096241 */ j .L80258904
/* 186FE8 80258708 2405000A */ addiu $a1, $zero, 0xa
.L8025870C:
/* 186FEC 8025870C 1620000B */ bnez $s1, .L8025873C
/* 186FF0 80258710 00000000 */ nop
/* 186FF4 80258714 0C099751 */ jal func_80265D44
/* 186FF8 80258718 24040001 */ addiu $a0, $zero, 1
/* 186FFC 8025871C 0040802D */ daddu $s0, $v0, $zero
/* 187000 80258720 0C099751 */ jal func_80265D44
/* 187004 80258724 24040019 */ addiu $a0, $zero, 0x19
/* 187008 80258728 16020004 */ bne $s0, $v0, .L8025873C
/* 18700C 8025872C 00000000 */ nop
/* 187010 80258730 0C099751 */ jal func_80265D44
/* 187014 80258734 24040001 */ addiu $a0, $zero, 1
/* 187018 80258738 AEE20088 */ sw $v0, 0x88($s7)
.L8025873C:
/* 18701C 8025873C 82C30210 */ lb $v1, 0x210($s6)
/* 187020 80258740 24020007 */ addiu $v0, $zero, 7
/* 187024 80258744 54620005 */ bnel $v1, $v0, .L8025875C
/* 187028 80258748 2402000A */ addiu $v0, $zero, 0xa
/* 18702C 8025874C 16200026 */ bnez $s1, .L802587E8
/* 187030 80258750 0040202D */ daddu $a0, $v0, $zero
/* 187034 80258754 080961F7 */ j .L802587DC
/* 187038 80258758 00000000 */ nop
.L8025875C:
/* 18703C 8025875C 10620022 */ beq $v1, $v0, .L802587E8
/* 187040 80258760 24020009 */ addiu $v0, $zero, 9
/* 187044 80258764 54620005 */ bnel $v1, $v0, .L8025877C
/* 187048 80258768 24020004 */ addiu $v0, $zero, 4
/* 18704C 8025876C 1620001E */ bnez $s1, .L802587E8
/* 187050 80258770 0040202D */ daddu $a0, $v0, $zero
/* 187054 80258774 080961F7 */ j .L802587DC
/* 187058 80258778 00000000 */ nop
.L8025877C:
/* 18705C 8025877C 54620005 */ bnel $v1, $v0, .L80258794
/* 187060 80258780 24020006 */ addiu $v0, $zero, 6
/* 187064 80258784 16200018 */ bnez $s1, .L802587E8
/* 187068 80258788 0040202D */ daddu $a0, $v0, $zero
/* 18706C 8025878C 080961F7 */ j .L802587DC
/* 187070 80258790 00000000 */ nop
.L80258794:
/* 187074 80258794 54620005 */ bnel $v1, $v0, .L802587AC
/* 187078 80258798 24020005 */ addiu $v0, $zero, 5
/* 18707C 8025879C 16200012 */ bnez $s1, .L802587E8
/* 187080 802587A0 0040202D */ daddu $a0, $v0, $zero
/* 187084 802587A4 080961F7 */ j .L802587DC
/* 187088 802587A8 00000000 */ nop
.L802587AC:
/* 18708C 802587AC 14620005 */ bne $v1, $v0, .L802587C4
/* 187090 802587B0 02C0202D */ daddu $a0, $s6, $zero
/* 187094 802587B4 1620000C */ bnez $s1, .L802587E8
/* 187098 802587B8 0040202D */ daddu $a0, $v0, $zero
/* 18709C 802587BC 080961F7 */ j .L802587DC
/* 1870A0 802587C0 00000000 */ nop
.L802587C4:
/* 1870A4 802587C4 0C099CAB */ jal heroes_is_ability_active
/* 1870A8 802587C8 24050015 */ addiu $a1, $zero, 0x15
/* 1870AC 802587CC 10400006 */ beqz $v0, .L802587E8
/* 1870B0 802587D0 00000000 */ nop
/* 1870B4 802587D4 16200004 */ bnez $s1, .L802587E8
/* 1870B8 802587D8 24040010 */ addiu $a0, $zero, 0x10
.L802587DC:
/* 1870BC 802587DC 0C099751 */ jal func_80265D44
/* 1870C0 802587E0 24110001 */ addiu $s1, $zero, 1
/* 1870C4 802587E4 AEE20088 */ sw $v0, 0x88($s7)
.L802587E8:
/* 1870C8 802587E8 0C03A752 */ jal is_ability_active
/* 1870CC 802587EC 24040013 */ addiu $a0, $zero, 0x13
/* 1870D0 802587F0 1040000C */ beqz $v0, .L80258824
/* 1870D4 802587F4 2402000B */ addiu $v0, $zero, 0xb
/* 1870D8 802587F8 16200006 */ bnez $s1, .L80258814
/* 1870DC 802587FC 2402000B */ addiu $v0, $zero, 0xb
/* 1870E0 80258800 0C099751 */ jal func_80265D44
/* 1870E4 80258804 2404000B */ addiu $a0, $zero, 0xb
/* 1870E8 80258808 AEE20088 */ sw $v0, 0x88($s7)
/* 1870EC 8025880C 24110001 */ addiu $s1, $zero, 1
/* 1870F0 80258810 2402000B */ addiu $v0, $zero, 0xb
.L80258814:
/* 1870F4 80258814 A2C20212 */ sb $v0, 0x212($s6)
/* 1870F8 80258818 2402007F */ addiu $v0, $zero, 0x7f
/* 1870FC 8025881C 08096212 */ j .L80258848
/* 187100 80258820 A2C20213 */ sb $v0, 0x213($s6)
.L80258824:
/* 187104 80258824 82C30212 */ lb $v1, 0x212($s6)
/* 187108 80258828 14620007 */ bne $v1, $v0, .L80258848
/* 18710C 8025882C 00000000 */ nop
/* 187110 80258830 16200005 */ bnez $s1, .L80258848
/* 187114 80258834 00000000 */ nop
/* 187118 80258838 0C099751 */ jal func_80265D44
/* 18711C 8025883C 0040202D */ daddu $a0, $v0, $zero
/* 187120 80258840 AEE20088 */ sw $v0, 0x88($s7)
/* 187124 80258844 24110001 */ addiu $s1, $zero, 1
.L80258848:
/* 187128 80258848 82C30218 */ lb $v1, 0x218($s6)
/* 18712C 8025884C 2402000E */ addiu $v0, $zero, 0xe
/* 187130 80258850 10620005 */ beq $v1, $v0, .L80258868
/* 187134 80258854 00000000 */ nop
/* 187138 80258858 8EE20000 */ lw $v0, ($s7)
/* 18713C 8025885C 30420100 */ andi $v0, $v0, 0x100
/* 187140 80258860 1040000A */ beqz $v0, .L8025888C
/* 187144 80258864 00000000 */ nop
.L80258868:
/* 187148 80258868 16200005 */ bnez $s1, .L80258880
/* 18714C 8025886C 00000000 */ nop
/* 187150 80258870 0C099751 */ jal func_80265D44
/* 187154 80258874 2404000E */ addiu $a0, $zero, 0xe
/* 187158 80258878 AEE20088 */ sw $v0, 0x88($s7)
/* 18715C 8025887C 24110001 */ addiu $s1, $zero, 1
.L80258880:
/* 187160 80258880 86C40436 */ lh $a0, 0x436($s6)
/* 187164 80258884 0C011E8C */ jal func_80047A30
/* 187168 80258888 2405000E */ addiu $a1, $zero, 0xe
.L8025888C:
/* 18716C 8025888C 16200004 */ bnez $s1, .L802588A0
/* 187170 80258890 00000000 */ nop
/* 187174 80258894 0C099751 */ jal func_80265D44
/* 187178 80258898 24040001 */ addiu $a0, $zero, 1
/* 18717C 8025889C AEE20088 */ sw $v0, 0x88($s7)
.L802588A0:
/* 187180 802588A0 3C02800E */ lui $v0, %hi(gBattleStatus)
/* 187184 802588A4 8C42C070 */ lw $v0, %lo(gBattleStatus)($v0)
/* 187188 802588A8 30420004 */ andi $v0, $v0, 4
/* 18718C 802588AC 14400030 */ bnez $v0, .L80258970
/* 187190 802588B0 3C030800 */ lui $v1, 0x800
/* 187194 802588B4 8EC20000 */ lw $v0, ($s6)
/* 187198 802588B8 00431024 */ and $v0, $v0, $v1
/* 18719C 802588BC 1040002C */ beqz $v0, .L80258970
/* 1871A0 802588C0 00000000 */ nop
/* 1871A4 802588C4 16A0001D */ bnez $s5, .L8025893C
/* 1871A8 802588C8 24020009 */ addiu $v0, $zero, 9
/* 1871AC 802588CC 82C30210 */ lb $v1, 0x210($s6)
/* 1871B0 802588D0 1062FF7F */ beq $v1, $v0, .L802586D0
/* 1871B4 802588D4 24020006 */ addiu $v0, $zero, 6
/* 1871B8 802588D8 1062FF80 */ beq $v1, $v0, .L802586DC
/* 1871BC 802588DC 24020005 */ addiu $v0, $zero, 5
/* 1871C0 802588E0 1062FF81 */ beq $v1, $v0, .L802586E8
/* 1871C4 802588E4 24020004 */ addiu $v0, $zero, 4
/* 1871C8 802588E8 1062FF82 */ beq $v1, $v0, .L802586F4
/* 1871CC 802588EC 2402000A */ addiu $v0, $zero, 0xa
/* 1871D0 802588F0 1062FF83 */ beq $v1, $v0, .L80258700
/* 1871D4 802588F4 24020007 */ addiu $v0, $zero, 7
/* 1871D8 802588F8 14620004 */ bne $v1, $v0, .L8025890C
/* 1871DC 802588FC 0040282D */ daddu $a1, $v0, $zero
/* 1871E0 80258900 86C40436 */ lh $a0, 0x436($s6)
.L80258904:
/* 1871E4 80258904 0C011E08 */ jal func_80047820
/* 1871E8 80258908 00000000 */ nop
.L8025890C:
/* 1871EC 8025890C 16A0000B */ bnez $s5, .L8025893C
/* 1871F0 80258910 00000000 */ nop
/* 1871F4 80258914 0C03A752 */ jal is_ability_active
/* 1871F8 80258918 24040013 */ addiu $a0, $zero, 0x13
/* 1871FC 8025891C 14400004 */ bnez $v0, .L80258930
/* 187200 80258920 2402000B */ addiu $v0, $zero, 0xb
/* 187204 80258924 82C30212 */ lb $v1, 0x212($s6)
/* 187208 80258928 14620004 */ bne $v1, $v0, .L8025893C
/* 18720C 8025892C 00000000 */ nop
.L80258930:
/* 187210 80258930 86C40436 */ lh $a0, 0x436($s6)
/* 187214 80258934 0C011E4A */ jal func_80047928
/* 187218 80258938 2405000B */ addiu $a1, $zero, 0xb
.L8025893C:
/* 18721C 8025893C 82C30218 */ lb $v1, 0x218($s6)
/* 187220 80258940 2402000E */ addiu $v0, $zero, 0xe
/* 187224 80258944 10620005 */ beq $v1, $v0, .L8025895C
/* 187228 80258948 00000000 */ nop
/* 18722C 8025894C 8EE20000 */ lw $v0, ($s7)
/* 187230 80258950 30420100 */ andi $v0, $v0, 0x100
/* 187234 80258954 1040000E */ beqz $v0, .L80258990
/* 187238 80258958 00000000 */ nop
.L8025895C:
/* 18723C 8025895C 86C40436 */ lh $a0, 0x436($s6)
/* 187240 80258960 0C011E8C */ jal func_80047A30
/* 187244 80258964 2405000E */ addiu $a1, $zero, 0xe
/* 187248 80258968 08096264 */ j .L80258990
/* 18724C 8025896C 00000000 */ nop
.L80258970:
/* 187250 80258970 0C011E3E */ jal func_800478F8
/* 187254 80258974 86C40436 */ lh $a0, 0x436($s6)
/* 187258 80258978 0C011E80 */ jal func_80047A00
/* 18725C 8025897C 86C40436 */ lh $a0, 0x436($s6)
/* 187260 80258980 0C011EC2 */ jal func_80047B08
/* 187264 80258984 86C40436 */ lh $a0, 0x436($s6)
/* 187268 80258988 0C011EF9 */ jal func_80047BE4
/* 18726C 8025898C 86C40436 */ lh $a0, 0x436($s6)
.L80258990:
/* 187270 80258990 82C30210 */ lb $v1, 0x210($s6)
/* 187274 80258994 24020008 */ addiu $v0, $zero, 8
/* 187278 80258998 1062FE6F */ beq $v1, $v0, .L80258358
/* 18727C 8025899C 00000000 */ nop
/* 187280 802589A0 16200009 */ bnez $s1, .L802589C8
/* 187284 802589A4 00000000 */ nop
/* 187288 802589A8 8EF00088 */ lw $s0, 0x88($s7)
/* 18728C 802589AC 0C099751 */ jal func_80265D44
/* 187290 802589B0 0040202D */ daddu $a0, $v0, $zero
/* 187294 802589B4 16020004 */ bne $s0, $v0, .L802589C8
/* 187298 802589B8 00000000 */ nop
/* 18729C 802589BC 0C099751 */ jal func_80265D44
/* 1872A0 802589C0 24040001 */ addiu $a0, $zero, 1
/* 1872A4 802589C4 AEE20088 */ sw $v0, 0x88($s7)
.L802589C8:
/* 1872A8 802589C8 8EC20008 */ lw $v0, 8($s6)
/* 1872AC 802589CC 80420024 */ lb $v0, 0x24($v0)
/* 1872B0 802589D0 C6C20188 */ lwc1 $f2, 0x188($s6)
/* 1872B4 802589D4 44820000 */ mtc1 $v0, $f0
/* 1872B8 802589D8 00000000 */ nop
/* 1872BC 802589DC 46800020 */ cvt.s.w $f0, $f0
/* 1872C0 802589E0 46020002 */ mul.s $f0, $f0, $f2
/* 1872C4 802589E4 00000000 */ nop
/* 1872C8 802589E8 86C40436 */ lh $a0, 0x436($s6)
/* 1872CC 802589EC 4600038D */ trunc.w.s $f14, $f0
/* 1872D0 802589F0 E7AE0010 */ swc1 $f14, 0x10($sp)
/* 1872D4 802589F4 8EC20008 */ lw $v0, 8($s6)
/* 1872D8 802589F8 80420025 */ lb $v0, 0x25($v0)
/* 1872DC 802589FC C6C20188 */ lwc1 $f2, 0x188($s6)
/* 1872E0 80258A00 44820000 */ mtc1 $v0, $f0
/* 1872E4 80258A04 00000000 */ nop
/* 1872E8 80258A08 46800020 */ cvt.s.w $f0, $f0
/* 1872EC 80258A0C 46020002 */ mul.s $f0, $f0, $f2
/* 1872F0 80258A10 00000000 */ nop
/* 1872F4 80258A14 4600038D */ trunc.w.s $f14, $f0
/* 1872F8 80258A18 E7AE0014 */ swc1 $f14, 0x14($sp)
/* 1872FC 80258A1C 8EC20008 */ lw $v0, 8($s6)
/* 187300 80258A20 80420026 */ lb $v0, 0x26($v0)
/* 187304 80258A24 C6C20188 */ lwc1 $f2, 0x188($s6)
/* 187308 80258A28 44820000 */ mtc1 $v0, $f0
/* 18730C 80258A2C 00000000 */ nop
/* 187310 80258A30 46800020 */ cvt.s.w $f0, $f0
/* 187314 80258A34 46020002 */ mul.s $f0, $f0, $f2
/* 187318 80258A38 00000000 */ nop
/* 18731C 80258A3C 4600038D */ trunc.w.s $f14, $f0
/* 187320 80258A40 E7AE0018 */ swc1 $f14, 0x18($sp)
/* 187324 80258A44 8EC20008 */ lw $v0, 8($s6)
/* 187328 80258A48 80420027 */ lb $v0, 0x27($v0)
/* 18732C 80258A4C C6C20188 */ lwc1 $f2, 0x188($s6)
/* 187330 80258A50 44820000 */ mtc1 $v0, $f0
/* 187334 80258A54 00000000 */ nop
/* 187338 80258A58 46800020 */ cvt.s.w $f0, $f0
/* 18733C 80258A5C 46020002 */ mul.s $f0, $f0, $f2
/* 187340 80258A60 00000000 */ nop
/* 187344 80258A64 4405A000 */ mfc1 $a1, $f20
/* 187348 80258A68 4406C000 */ mfc1 $a2, $f24
/* 18734C 80258A6C 4407B000 */ mfc1 $a3, $f22
/* 187350 80258A70 4600038D */ trunc.w.s $f14, $f0
/* 187354 80258A74 0C011DE3 */ jal func_8004778C
/* 187358 80258A78 E7AE001C */ swc1 $f14, 0x1c($sp)
/* 18735C 80258A7C 92C20191 */ lbu $v0, 0x191($s6)
/* 187360 80258A80 C6C40188 */ lwc1 $f4, 0x188($s6)
/* 187364 80258A84 44821000 */ mtc1 $v0, $f2
/* 187368 80258A88 00000000 */ nop
/* 18736C 80258A8C 468010A0 */ cvt.s.w $f2, $f2
/* 187370 80258A90 46041082 */ mul.s $f2, $f2, $f4
/* 187374 80258A94 00000000 */ nop
/* 187378 80258A98 92C20190 */ lbu $v0, 0x190($s6)
/* 18737C 80258A9C 44820000 */ mtc1 $v0, $f0
/* 187380 80258AA0 00000000 */ nop
/* 187384 80258AA4 46800020 */ cvt.s.w $f0, $f0
/* 187388 80258AA8 46040002 */ mul.s $f0, $f0, $f4
/* 18738C 80258AAC 00000000 */ nop
/* 187390 80258AB0 86C40436 */ lh $a0, 0x436($s6)
/* 187394 80258AB4 4600138D */ trunc.w.s $f14, $f2
/* 187398 80258AB8 44057000 */ mfc1 $a1, $f14
/* 18739C 80258ABC 4600038D */ trunc.w.s $f14, $f0
/* 1873A0 80258AC0 44067000 */ mfc1 $a2, $f14
/* 1873A4 80258AC4 0C011DFD */ jal func_800477F4
/* 1873A8 80258AC8 00000000 */ nop
/* 1873AC 80258ACC 86E20068 */ lh $v0, 0x68($s7)
/* 1873B0 80258AD0 44820000 */ mtc1 $v0, $f0
/* 1873B4 80258AD4 00000000 */ nop
/* 1873B8 80258AD8 46800020 */ cvt.s.w $f0, $f0
/* 1873BC 80258ADC 4600A500 */ add.s $f20, $f20, $f0
/* 1873C0 80258AE0 86E2006A */ lh $v0, 0x6a($s7)
/* 1873C4 80258AE4 27B501E0 */ addiu $s5, $sp, 0x1e0
/* 1873C8 80258AE8 44820000 */ mtc1 $v0, $f0
/* 1873CC 80258AEC 00000000 */ nop
/* 1873D0 80258AF0 46800020 */ cvt.s.w $f0, $f0
/* 1873D4 80258AF4 4600C600 */ add.s $f24, $f24, $f0
/* 1873D8 80258AF8 4407B000 */ mfc1 $a3, $f22
/* 1873DC 80258AFC 4405A000 */ mfc1 $a1, $f20
/* 1873E0 80258B00 4406C000 */ mfc1 $a2, $f24
/* 1873E4 80258B04 02A0202D */ daddu $a0, $s5, $zero
/* 1873E8 80258B08 AEE70060 */ sw $a3, 0x60($s7)
/* 1873EC 80258B0C AEE50058 */ sw $a1, 0x58($s7)
/* 1873F0 80258B10 0C019E40 */ jal guTranslateF
/* 1873F4 80258B14 AEE6005C */ sw $a2, 0x5c($s7)
/* 1873F8 80258B18 86C20168 */ lh $v0, 0x168($s6)
/* 1873FC 80258B1C C6C20188 */ lwc1 $f2, 0x188($s6)
/* 187400 80258B20 00021023 */ negu $v0, $v0
/* 187404 80258B24 44820000 */ mtc1 $v0, $f0
/* 187408 80258B28 00000000 */ nop
/* 18740C 80258B2C 46800020 */ cvt.s.w $f0, $f0
/* 187410 80258B30 46020002 */ mul.s $f0, $f0, $f2
/* 187414 80258B34 00000000 */ nop
/* 187418 80258B38 86C2016A */ lh $v0, 0x16a($s6)
/* 18741C 80258B3C 00021023 */ negu $v0, $v0
/* 187420 80258B40 44050000 */ mfc1 $a1, $f0
/* 187424 80258B44 44820000 */ mtc1 $v0, $f0
/* 187428 80258B48 00000000 */ nop
/* 18742C 80258B4C 46800020 */ cvt.s.w $f0, $f0
/* 187430 80258B50 46020002 */ mul.s $f0, $f0, $f2
/* 187434 80258B54 00000000 */ nop
/* 187438 80258B58 86C2016C */ lh $v0, 0x16c($s6)
/* 18743C 80258B5C 00021023 */ negu $v0, $v0
/* 187440 80258B60 44060000 */ mfc1 $a2, $f0
/* 187444 80258B64 44820000 */ mtc1 $v0, $f0
/* 187448 80258B68 00000000 */ nop
/* 18744C 80258B6C 46800020 */ cvt.s.w $f0, $f0
/* 187450 80258B70 46020002 */ mul.s $f0, $f0, $f2
/* 187454 80258B74 00000000 */ nop
/* 187458 80258B78 27B40160 */ addiu $s4, $sp, 0x160
/* 18745C 80258B7C 44070000 */ mfc1 $a3, $f0
/* 187460 80258B80 0C019E40 */ jal guTranslateF
/* 187464 80258B84 0280202D */ daddu $a0, $s4, $zero
/* 187468 80258B88 86C20168 */ lh $v0, 0x168($s6)
/* 18746C 80258B8C C6C20188 */ lwc1 $f2, 0x188($s6)
/* 187470 80258B90 44820000 */ mtc1 $v0, $f0
/* 187474 80258B94 00000000 */ nop
/* 187478 80258B98 46800020 */ cvt.s.w $f0, $f0
/* 18747C 80258B9C 46020002 */ mul.s $f0, $f0, $f2
/* 187480 80258BA0 00000000 */ nop
/* 187484 80258BA4 86C2016A */ lh $v0, 0x16a($s6)
/* 187488 80258BA8 44050000 */ mfc1 $a1, $f0
/* 18748C 80258BAC 44820000 */ mtc1 $v0, $f0
/* 187490 80258BB0 00000000 */ nop
/* 187494 80258BB4 46800020 */ cvt.s.w $f0, $f0
/* 187498 80258BB8 46020002 */ mul.s $f0, $f0, $f2
/* 18749C 80258BBC 00000000 */ nop
/* 1874A0 80258BC0 86C2016C */ lh $v0, 0x16c($s6)
/* 1874A4 80258BC4 44060000 */ mfc1 $a2, $f0
/* 1874A8 80258BC8 44820000 */ mtc1 $v0, $f0
/* 1874AC 80258BCC 00000000 */ nop
/* 1874B0 80258BD0 46800020 */ cvt.s.w $f0, $f0
/* 1874B4 80258BD4 46020002 */ mul.s $f0, $f0, $f2
/* 1874B8 80258BD8 00000000 */ nop
/* 1874BC 80258BDC 27B301A0 */ addiu $s3, $sp, 0x1a0
/* 1874C0 80258BE0 44070000 */ mfc1 $a3, $f0
/* 1874C4 80258BE4 4480A000 */ mtc1 $zero, $f20
/* 1874C8 80258BE8 0C019E40 */ jal guTranslateF
/* 1874CC 80258BEC 0260202D */ daddu $a0, $s3, $zero
/* 1874D0 80258BF0 3C013F80 */ lui $at, 0x3f80
/* 1874D4 80258BF4 4481B000 */ mtc1 $at, $f22
/* 1874D8 80258BF8 E7B40010 */ swc1 $f20, 0x10($sp)
/* 1874DC 80258BFC 8EC5015C */ lw $a1, 0x15c($s6)
/* 1874E0 80258C00 4407A000 */ mfc1 $a3, $f20
/* 1874E4 80258C04 4406B000 */ mfc1 $a2, $f22
/* 1874E8 80258C08 0C019EC8 */ jal guRotateF
/* 1874EC 80258C0C 27A40020 */ addiu $a0, $sp, 0x20
/* 1874F0 80258C10 27B10060 */ addiu $s1, $sp, 0x60
/* 1874F4 80258C14 E7B40010 */ swc1 $f20, 0x10($sp)
/* 1874F8 80258C18 8EC50160 */ lw $a1, 0x160($s6)
/* 1874FC 80258C1C 4406A000 */ mfc1 $a2, $f20
/* 187500 80258C20 4407B000 */ mfc1 $a3, $f22
/* 187504 80258C24 0C019EC8 */ jal guRotateF
/* 187508 80258C28 0220202D */ daddu $a0, $s1, $zero
/* 18750C 80258C2C 27B000A0 */ addiu $s0, $sp, 0xa0
/* 187510 80258C30 4406A000 */ mfc1 $a2, $f20
/* 187514 80258C34 0200202D */ daddu $a0, $s0, $zero
/* 187518 80258C38 E7B60010 */ swc1 $f22, 0x10($sp)
/* 18751C 80258C3C 8EC50164 */ lw $a1, 0x164($s6)
/* 187520 80258C40 0C019EC8 */ jal guRotateF
/* 187524 80258C44 00C0382D */ daddu $a3, $a2, $zero
/* 187528 80258C48 0220202D */ daddu $a0, $s1, $zero
/* 18752C 80258C4C 27A50020 */ addiu $a1, $sp, 0x20
/* 187530 80258C50 27B10220 */ addiu $s1, $sp, 0x220
/* 187534 80258C54 0C019D80 */ jal guMtxCatF
/* 187538 80258C58 0220302D */ daddu $a2, $s1, $zero
/* 18753C 80258C5C 0220202D */ daddu $a0, $s1, $zero
/* 187540 80258C60 0200282D */ daddu $a1, $s0, $zero
/* 187544 80258C64 27B200E0 */ addiu $s2, $sp, 0xe0
/* 187548 80258C68 0C019D80 */ jal guMtxCatF
/* 18754C 80258C6C 0240302D */ daddu $a2, $s2, $zero
/* 187550 80258C70 C6C60170 */ lwc1 $f6, 0x170($s6)
/* 187554 80258C74 3C01802A */ lui $at, 0x802a
/* 187558 80258C78 D428D390 */ ldc1 $f8, -0x2c70($at)
/* 18755C 80258C7C 460031A1 */ cvt.d.s $f6, $f6
/* 187560 80258C80 46283182 */ mul.d $f6, $f6, $f8
/* 187564 80258C84 00000000 */ nop
/* 187568 80258C88 C6C20174 */ lwc1 $f2, 0x174($s6)
/* 18756C 80258C8C 460010A1 */ cvt.d.s $f2, $f2
/* 187570 80258C90 46281082 */ mul.d $f2, $f2, $f8
/* 187574 80258C94 00000000 */ nop
/* 187578 80258C98 C6C40178 */ lwc1 $f4, 0x178($s6)
/* 18757C 80258C9C 46002121 */ cvt.d.s $f4, $f4
/* 187580 80258CA0 46282102 */ mul.d $f4, $f4, $f8
/* 187584 80258CA4 00000000 */ nop
/* 187588 80258CA8 C6C00188 */ lwc1 $f0, 0x188($s6)
/* 18758C 80258CAC 46000021 */ cvt.d.s $f0, $f0
/* 187590 80258CB0 46203182 */ mul.d $f6, $f6, $f0
/* 187594 80258CB4 00000000 */ nop
/* 187598 80258CB8 46201082 */ mul.d $f2, $f2, $f0
/* 18759C 80258CBC 00000000 */ nop
/* 1875A0 80258CC0 82E20074 */ lb $v0, 0x74($s7)
/* 1875A4 80258CC4 44820000 */ mtc1 $v0, $f0
/* 1875A8 80258CC8 00000000 */ nop
/* 1875AC 80258CCC 46800021 */ cvt.d.w $f0, $f0
/* 1875B0 80258CD0 46201082 */ mul.d $f2, $f2, $f0
/* 1875B4 80258CD4 00000000 */ nop
/* 1875B8 80258CD8 27B00120 */ addiu $s0, $sp, 0x120
/* 1875BC 80258CDC 46202120 */ cvt.s.d $f4, $f4
/* 1875C0 80258CE0 44072000 */ mfc1 $a3, $f4
/* 1875C4 80258CE4 462031A0 */ cvt.s.d $f6, $f6
/* 1875C8 80258CE8 44053000 */ mfc1 $a1, $f6
/* 1875CC 80258CEC 462010A0 */ cvt.s.d $f2, $f2
/* 1875D0 80258CF0 44061000 */ mfc1 $a2, $f2
/* 1875D4 80258CF4 0C019DF0 */ jal guScaleF
/* 1875D8 80258CF8 0200202D */ daddu $a0, $s0, $zero
/* 1875DC 80258CFC 0200202D */ daddu $a0, $s0, $zero
/* 1875E0 80258D00 0280282D */ daddu $a1, $s4, $zero
/* 1875E4 80258D04 0C019D80 */ jal guMtxCatF
/* 1875E8 80258D08 0220302D */ daddu $a2, $s1, $zero
/* 1875EC 80258D0C 0220202D */ daddu $a0, $s1, $zero
/* 1875F0 80258D10 0240282D */ daddu $a1, $s2, $zero
/* 1875F4 80258D14 27B00260 */ addiu $s0, $sp, 0x260
/* 1875F8 80258D18 0C019D80 */ jal guMtxCatF
/* 1875FC 80258D1C 0200302D */ daddu $a2, $s0, $zero
/* 187600 80258D20 0200202D */ daddu $a0, $s0, $zero
/* 187604 80258D24 0260282D */ daddu $a1, $s3, $zero
/* 187608 80258D28 0C019D80 */ jal guMtxCatF
/* 18760C 80258D2C 0220302D */ daddu $a2, $s1, $zero
/* 187610 80258D30 0220202D */ daddu $a0, $s1, $zero
/* 187614 80258D34 02A0282D */ daddu $a1, $s5, $zero
/* 187618 80258D38 0C019D80 */ jal guMtxCatF
/* 18761C 80258D3C 0200302D */ daddu $a2, $s0, $zero
/* 187620 80258D40 8EE50088 */ lw $a1, 0x88($s7)
/* 187624 80258D44 13C50004 */ beq $fp, $a1, .L80258D58
/* 187628 80258D48 00000000 */ nop
/* 18762C 80258D4C 8EE60090 */ lw $a2, 0x90($s7)
/* 187630 80258D50 0C0B76A3 */ jal func_802DDA8C
/* 187634 80258D54 0000202D */ daddu $a0, $zero, $zero
.L80258D58:
/* 187638 80258D58 3C014334 */ lui $at, 0x4334
/* 18763C 80258D5C 4481A000 */ mtc1 $at, $f20
/* 187640 80258D60 00000000 */ nop
/* 187644 80258D64 4614D500 */ add.s $f20, $f26, $f20
/* 187648 80258D68 0C00A6C9 */ jal clamp_angle
/* 18764C 80258D6C 4600A306 */ mov.s $f12, $f20
/* 187650 80258D70 0000202D */ daddu $a0, $zero, $zero
/* 187654 80258D74 02E0282D */ daddu $a1, $s7, $zero
/* 187658 80258D78 4600038D */ trunc.w.s $f14, $f0
/* 18765C 80258D7C 44067000 */ mfc1 $a2, $f14
/* 187660 80258D80 0C097210 */ jal func_8025C840
/* 187664 80258D84 0080382D */ daddu $a3, $a0, $zero
/* 187668 80258D88 0C00A6C9 */ jal clamp_angle
/* 18766C 80258D8C 4600A306 */ mov.s $f12, $f20
/* 187670 80258D90 0000202D */ daddu $a0, $zero, $zero
/* 187674 80258D94 02E0282D */ daddu $a1, $s7, $zero
/* 187678 80258D98 4600038D */ trunc.w.s $f14, $f0
/* 18767C 80258D9C 44067000 */ mfc1 $a2, $f14
/* 187680 80258DA0 0C097332 */ jal func_8025CCC8
/* 187684 80258DA4 0080382D */ daddu $a3, $a0, $zero
/* 187688 80258DA8 0C00A6C9 */ jal clamp_angle
/* 18768C 80258DAC 4600A306 */ mov.s $f12, $f20
/* 187690 80258DB0 0000202D */ daddu $a0, $zero, $zero
/* 187694 80258DB4 02E0282D */ daddu $a1, $s7, $zero
/* 187698 80258DB8 4600038D */ trunc.w.s $f14, $f0
/* 18769C 80258DBC 44067000 */ mfc1 $a2, $f14
/* 1876A0 80258DC0 0200382D */ daddu $a3, $s0, $zero
/* 1876A4 80258DC4 0C09647B */ jal func_802591EC
/* 1876A8 80258DC8 AFA00010 */ sw $zero, 0x10($sp)
/* 1876AC 80258DCC 0C0973B2 */ jal func_8025CEC8
/* 1876B0 80258DD0 02E0202D */ daddu $a0, $s7, $zero
/* 1876B4 80258DD4 8FBF02C4 */ lw $ra, 0x2c4($sp)
/* 1876B8 80258DD8 8FBE02C0 */ lw $fp, 0x2c0($sp)
/* 1876BC 80258DDC 8FB702BC */ lw $s7, 0x2bc($sp)
/* 1876C0 80258DE0 8FB602B8 */ lw $s6, 0x2b8($sp)
/* 1876C4 80258DE4 8FB502B4 */ lw $s5, 0x2b4($sp)
/* 1876C8 80258DE8 8FB402B0 */ lw $s4, 0x2b0($sp)
/* 1876CC 80258DEC 8FB302AC */ lw $s3, 0x2ac($sp)
/* 1876D0 80258DF0 8FB202A8 */ lw $s2, 0x2a8($sp)
/* 1876D4 80258DF4 8FB102A4 */ lw $s1, 0x2a4($sp)
/* 1876D8 80258DF8 8FB002A0 */ lw $s0, 0x2a0($sp)
/* 1876DC 80258DFC D7BA02E0 */ ldc1 $f26, 0x2e0($sp)
/* 1876E0 80258E00 D7B802D8 */ ldc1 $f24, 0x2d8($sp)
/* 1876E4 80258E04 D7B602D0 */ ldc1 $f22, 0x2d0($sp)
/* 1876E8 80258E08 D7B402C8 */ ldc1 $f20, 0x2c8($sp)
/* 1876EC 80258E0C 03E00008 */ jr $ra
/* 1876F0 80258E10 27BD02E8 */ addiu $sp, $sp, 0x2e8