papermario/ver/us/asm/nonmatchings/code_182B30/func_80255FE0.s
Ethan Roseman e4480c0f59
Some map funcs, 16C8E0 segment rodata migration, 16F740 funcs, etc (#217)
* Misc early code decomp

* Make expected script

* fix m2ctx

* gOverrideFlags & set/unset macros

* update symbol addrs

* Cleanup and PR comments

* oops

* UnkNpcAIFunc16

* UnkNpcAIFunc17

* UnkNpcAIFunc18

* symbol_addrs

* area_mac data/rodata disassembly

* 16C8E0 segment rodata migration

* delete_actor

* 16F740 funcs

* symbol_addrs
2021-03-20 03:17:02 +09:00

1238 lines
62 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.section .rodata
glabel D_8029D368
.double 0.4
glabel D_8029D370
.double 0.7142857142857143
glabel D_8029D378
.double 0.7142857142857143
.section .text
glabel func_80255FE0
/* 1848C0 80255FE0 27BDFC30 */ addiu $sp, $sp, -0x3d0
/* 1848C4 80255FE4 3C03800E */ lui $v1, %hi(gBattleStatus)
/* 1848C8 80255FE8 2463C070 */ addiu $v1, $v1, %lo(gBattleStatus)
/* 1848CC 80255FEC 0060102D */ daddu $v0, $v1, $zero
/* 1848D0 80255FF0 AFBF039C */ sw $ra, 0x39c($sp)
/* 1848D4 80255FF4 AFBE0398 */ sw $fp, 0x398($sp)
/* 1848D8 80255FF8 AFB70394 */ sw $s7, 0x394($sp)
/* 1848DC 80255FFC AFB60390 */ sw $s6, 0x390($sp)
/* 1848E0 80256000 AFB5038C */ sw $s5, 0x38c($sp)
/* 1848E4 80256004 AFB40388 */ sw $s4, 0x388($sp)
/* 1848E8 80256008 AFB30384 */ sw $s3, 0x384($sp)
/* 1848EC 8025600C AFB20380 */ sw $s2, 0x380($sp)
/* 1848F0 80256010 AFB1037C */ sw $s1, 0x37c($sp)
/* 1848F4 80256014 AFB00378 */ sw $s0, 0x378($sp)
/* 1848F8 80256018 F7BE03C8 */ sdc1 $f30, 0x3c8($sp)
/* 1848FC 8025601C F7BC03C0 */ sdc1 $f28, 0x3c0($sp)
/* 184900 80256020 F7BA03B8 */ sdc1 $f26, 0x3b8($sp)
/* 184904 80256024 F7B803B0 */ sdc1 $f24, 0x3b0($sp)
/* 184908 80256028 F7B603A8 */ sdc1 $f22, 0x3a8($sp)
/* 18490C 8025602C F7B403A0 */ sdc1 $f20, 0x3a0($sp)
/* 184910 80256030 14800005 */ bnez $a0, .L80256048
/* 184914 80256034 AFA403D0 */ sw $a0, 0x3d0($sp)
/* 184918 80256038 00051080 */ sll $v0, $a1, 2
/* 18491C 8025603C 00431021 */ addu $v0, $v0, $v1
/* 184920 80256040 08095813 */ j .L8025604C
/* 184924 80256044 8C5200E0 */ lw $s2, 0xe0($v0)
.L80256048:
/* 184928 80256048 8C5200DC */ lw $s2, 0xdc($v0)
.L8025604C:
/* 18492C 8025604C 86420150 */ lh $v0, 0x150($s2)
/* 184930 80256050 C6400144 */ lwc1 $f0, 0x144($s2)
/* 184934 80256054 44821000 */ mtc1 $v0, $f2
/* 184938 80256058 00000000 */ nop
/* 18493C 8025605C 468010A0 */ cvt.s.w $f2, $f2
/* 184940 80256060 46020000 */ add.s $f0, $f0, $f2
/* 184944 80256064 8E420000 */ lw $v0, ($s2)
/* 184948 80256068 30420800 */ andi $v0, $v0, 0x800
/* 18494C 8025606C 14400009 */ bnez $v0, .L80256094
/* 184950 80256070 E7A00364 */ swc1 $f0, 0x364($sp)
/* 184954 80256074 86420152 */ lh $v0, 0x152($s2)
/* 184958 80256078 C6400148 */ lwc1 $f0, 0x148($s2)
/* 18495C 8025607C 44821000 */ mtc1 $v0, $f2
/* 184960 80256080 00000000 */ nop
/* 184964 80256084 468010A0 */ cvt.s.w $f2, $f2
/* 184968 80256088 8242019A */ lb $v0, 0x19a($s2)
/* 18496C 8025608C 0809582C */ j .L802560B0
/* 184970 80256090 46020000 */ add.s $f0, $f0, $f2
.L80256094:
/* 184974 80256094 86420152 */ lh $v0, 0x152($s2)
/* 184978 80256098 C6400148 */ lwc1 $f0, 0x148($s2)
/* 18497C 8025609C 44821000 */ mtc1 $v0, $f2
/* 184980 802560A0 00000000 */ nop
/* 184984 802560A4 468010A0 */ cvt.s.w $f2, $f2
/* 184988 802560A8 8242019A */ lb $v0, 0x19a($s2)
/* 18498C 802560AC 46020001 */ sub.s $f0, $f0, $f2
.L802560B0:
/* 184990 802560B0 44821000 */ mtc1 $v0, $f2
/* 184994 802560B4 00000000 */ nop
/* 184998 802560B8 468010A0 */ cvt.s.w $f2, $f2
/* 18499C 802560BC 46020780 */ add.s $f30, $f0, $f2
/* 1849A0 802560C0 8E420008 */ lw $v0, 8($s2)
/* 1849A4 802560C4 82430194 */ lb $v1, 0x194($s2)
/* 1849A8 802560C8 80420024 */ lb $v0, 0x24($v0)
/* 1849AC 802560CC C6420188 */ lwc1 $f2, 0x188($s2)
/* 1849B0 802560D0 00431021 */ addu $v0, $v0, $v1
/* 1849B4 802560D4 44820000 */ mtc1 $v0, $f0
/* 1849B8 802560D8 00000000 */ nop
/* 1849BC 802560DC 46800020 */ cvt.s.w $f0, $f0
/* 1849C0 802560E0 46020002 */ mul.s $f0, $f0, $f2
/* 1849C4 802560E4 00000000 */ nop
/* 1849C8 802560E8 C7AA0364 */ lwc1 $f10, 0x364($sp)
/* 1849CC 802560EC 86440154 */ lh $a0, 0x154($s2)
/* 1849D0 802560F0 C644014C */ lwc1 $f4, 0x14c($s2)
/* 1849D4 802560F4 8E420440 */ lw $v0, 0x440($s2)
/* 1849D8 802560F8 46005000 */ add.s $f0, $f10, $f0
/* 1849DC 802560FC 8C42000C */ lw $v0, 0xc($v0)
/* 1849E0 80256100 E4400008 */ swc1 $f0, 8($v0)
/* 1849E4 80256104 8E420008 */ lw $v0, 8($s2)
/* 1849E8 80256108 82430195 */ lb $v1, 0x195($s2)
/* 1849EC 8025610C 80420025 */ lb $v0, 0x25($v0)
/* 1849F0 80256110 C6420188 */ lwc1 $f2, 0x188($s2)
/* 1849F4 80256114 00431021 */ addu $v0, $v0, $v1
/* 1849F8 80256118 44820000 */ mtc1 $v0, $f0
/* 1849FC 8025611C 00000000 */ nop
/* 184A00 80256120 46800020 */ cvt.s.w $f0, $f0
/* 184A04 80256124 46020002 */ mul.s $f0, $f0, $f2
/* 184A08 80256128 00000000 */ nop
/* 184A0C 8025612C 8E420440 */ lw $v0, 0x440($s2)
/* 184A10 80256130 4600F000 */ add.s $f0, $f30, $f0
/* 184A14 80256134 8C42000C */ lw $v0, 0xc($v0)
/* 184A18 80256138 E440000C */ swc1 $f0, 0xc($v0)
/* 184A1C 8025613C 44840000 */ mtc1 $a0, $f0
/* 184A20 80256140 00000000 */ nop
/* 184A24 80256144 46800020 */ cvt.s.w $f0, $f0
/* 184A28 80256148 46002100 */ add.s $f4, $f4, $f0
/* 184A2C 8025614C 8E420440 */ lw $v0, 0x440($s2)
/* 184A30 80256150 E7A40368 */ swc1 $f4, 0x368($sp)
/* 184A34 80256154 8C42000C */ lw $v0, 0xc($v0)
/* 184A38 80256158 E4440010 */ swc1 $f4, 0x10($v0)
/* 184A3C 8025615C 3C02800E */ lui $v0, %hi(gBattleStatus)
/* 184A40 80256160 8C42C070 */ lw $v0, %lo(gBattleStatus)($v0)
/* 184A44 80256164 30420004 */ andi $v0, $v0, 4
/* 184A48 80256168 1440001C */ bnez $v0, .L802561DC
/* 184A4C 8025616C 3C030800 */ lui $v1, 0x800
/* 184A50 80256170 8E420000 */ lw $v0, ($s2)
/* 184A54 80256174 00431024 */ and $v0, $v0, $v1
/* 184A58 80256178 10400018 */ beqz $v0, .L802561DC
/* 184A5C 8025617C 00000000 */ nop
/* 184A60 80256180 8242021D */ lb $v0, 0x21d($s2)
/* 184A64 80256184 9244021D */ lbu $a0, 0x21d($s2)
/* 184A68 80256188 10400008 */ beqz $v0, .L802561AC
/* 184A6C 8025618C 2482FFFF */ addiu $v0, $a0, -1
/* 184A70 80256190 8E430440 */ lw $v1, 0x440($s2)
/* 184A74 80256194 3C01C47A */ lui $at, 0xc47a
/* 184A78 80256198 44810000 */ mtc1 $at, $f0
/* 184A7C 8025619C A242021D */ sb $v0, 0x21d($s2)
/* 184A80 802561A0 8C62000C */ lw $v0, 0xc($v1)
/* 184A84 802561A4 0809587E */ j .L802561F8
/* 184A88 802561A8 E440000C */ swc1 $f0, 0xc($v0)
.L802561AC:
/* 184A8C 802561AC C6400188 */ lwc1 $f0, 0x188($s2)
/* 184A90 802561B0 3C013FE8 */ lui $at, 0x3fe8
/* 184A94 802561B4 44811800 */ mtc1 $at, $f3
/* 184A98 802561B8 44801000 */ mtc1 $zero, $f2
/* 184A9C 802561BC 46000021 */ cvt.d.s $f0, $f0
/* 184AA0 802561C0 46220002 */ mul.d $f0, $f0, $f2
/* 184AA4 802561C4 00000000 */ nop
/* 184AA8 802561C8 8E420440 */ lw $v0, 0x440($s2)
/* 184AAC 802561CC 8C42000C */ lw $v0, 0xc($v0)
/* 184AB0 802561D0 46200020 */ cvt.s.d $f0, $f0
/* 184AB4 802561D4 0809587E */ j .L802561F8
/* 184AB8 802561D8 E4400034 */ swc1 $f0, 0x34($v0)
.L802561DC:
/* 184ABC 802561DC 8E420440 */ lw $v0, 0x440($s2)
/* 184AC0 802561E0 3C01C47A */ lui $at, 0xc47a
/* 184AC4 802561E4 44810000 */ mtc1 $at, $f0
/* 184AC8 802561E8 8C42000C */ lw $v0, 0xc($v0)
/* 184ACC 802561EC E440000C */ swc1 $f0, 0xc($v0)
/* 184AD0 802561F0 2402000A */ addiu $v0, $zero, 0xa
/* 184AD4 802561F4 A242021D */ sb $v0, 0x21d($s2)
.L802561F8:
/* 184AD8 802561F8 82430210 */ lb $v1, 0x210($s2)
/* 184ADC 802561FC 24020007 */ addiu $v0, $zero, 7
/* 184AE0 80256200 1462002C */ bne $v1, $v0, .L802562B4
/* 184AE4 80256204 00000000 */ nop
/* 184AE8 80256208 8E440228 */ lw $a0, 0x228($s2)
/* 184AEC 8025620C 10800030 */ beqz $a0, .L802562D0
/* 184AF0 80256210 00000000 */ nop
/* 184AF4 80256214 3C03800E */ lui $v1, %hi(gBattleStatus)
/* 184AF8 80256218 8C63C070 */ lw $v1, %lo(gBattleStatus)($v1)
/* 184AFC 8025621C 30620008 */ andi $v0, $v1, 8
/* 184B00 80256220 14400007 */ bnez $v0, .L80256240
/* 184B04 80256224 30620004 */ andi $v0, $v1, 4
/* 184B08 80256228 14400019 */ bnez $v0, .L80256290
/* 184B0C 8025622C 3C030800 */ lui $v1, 0x800
/* 184B10 80256230 8E420000 */ lw $v0, ($s2)
/* 184B14 80256234 00431024 */ and $v0, $v0, $v1
/* 184B18 80256238 10400015 */ beqz $v0, .L80256290
/* 184B1C 8025623C 00000000 */ nop
.L80256240:
/* 184B20 80256240 8C82000C */ lw $v0, 0xc($a0)
/* 184B24 80256244 C7AA0364 */ lwc1 $f10, 0x364($sp)
/* 184B28 80256248 E44A0004 */ swc1 $f10, 4($v0)
/* 184B2C 8025624C 8C82000C */ lw $v0, 0xc($a0)
/* 184B30 80256250 E45E0008 */ swc1 $f30, 8($v0)
/* 184B34 80256254 8C82000C */ lw $v0, 0xc($a0)
/* 184B38 80256258 C7AA0368 */ lwc1 $f10, 0x368($sp)
/* 184B3C 8025625C E44A000C */ swc1 $f10, 0xc($v0)
/* 184B40 80256260 92420191 */ lbu $v0, 0x191($s2)
/* 184B44 80256264 3C014038 */ lui $at, 0x4038
/* 184B48 80256268 44811800 */ mtc1 $at, $f3
/* 184B4C 8025626C 44801000 */ mtc1 $zero, $f2
/* 184B50 80256270 44820000 */ mtc1 $v0, $f0
/* 184B54 80256274 00000000 */ nop
/* 184B58 80256278 46800021 */ cvt.d.w $f0, $f0
/* 184B5C 8025627C 46220003 */ div.d $f0, $f0, $f2
/* 184B60 80256280 8C82000C */ lw $v0, 0xc($a0)
/* 184B64 80256284 46200020 */ cvt.s.d $f0, $f0
/* 184B68 80256288 080958B4 */ j .L802562D0
/* 184B6C 8025628C E4400020 */ swc1 $f0, 0x20($v0)
.L80256290:
/* 184B70 80256290 8C82000C */ lw $v0, 0xc($a0)
/* 184B74 80256294 3C01C47A */ lui $at, 0xc47a
/* 184B78 80256298 44810000 */ mtc1 $at, $f0
/* 184B7C 8025629C AC400004 */ sw $zero, 4($v0)
/* 184B80 802562A0 8C82000C */ lw $v0, 0xc($a0)
/* 184B84 802562A4 E4400008 */ swc1 $f0, 8($v0)
/* 184B88 802562A8 8C82000C */ lw $v0, 0xc($a0)
/* 184B8C 802562AC 080958B4 */ j .L802562D0
/* 184B90 802562B0 AC40000C */ sw $zero, 0xc($v0)
.L802562B4:
/* 184B94 802562B4 8E440228 */ lw $a0, 0x228($s2)
/* 184B98 802562B8 10800005 */ beqz $a0, .L802562D0
/* 184B9C 802562BC 00000000 */ nop
/* 184BA0 802562C0 8C820000 */ lw $v0, ($a0)
/* 184BA4 802562C4 34420010 */ ori $v0, $v0, 0x10
/* 184BA8 802562C8 AC820000 */ sw $v0, ($a0)
/* 184BAC 802562CC AE400228 */ sw $zero, 0x228($s2)
.L802562D0:
/* 184BB0 802562D0 8E420008 */ lw $v0, 8($s2)
/* 184BB4 802562D4 82430194 */ lb $v1, 0x194($s2)
/* 184BB8 802562D8 80420024 */ lb $v0, 0x24($v0)
/* 184BBC 802562DC C6420188 */ lwc1 $f2, 0x188($s2)
/* 184BC0 802562E0 00431021 */ addu $v0, $v0, $v1
/* 184BC4 802562E4 44820000 */ mtc1 $v0, $f0
/* 184BC8 802562E8 00000000 */ nop
/* 184BCC 802562EC 46800020 */ cvt.s.w $f0, $f0
/* 184BD0 802562F0 46020002 */ mul.s $f0, $f0, $f2
/* 184BD4 802562F4 00000000 */ nop
/* 184BD8 802562F8 86440436 */ lh $a0, 0x436($s2)
/* 184BDC 802562FC 4600028D */ trunc.w.s $f10, $f0
/* 184BE0 80256300 E7AA0010 */ swc1 $f10, 0x10($sp)
/* 184BE4 80256304 8E420008 */ lw $v0, 8($s2)
/* 184BE8 80256308 82430195 */ lb $v1, 0x195($s2)
/* 184BEC 8025630C 80420025 */ lb $v0, 0x25($v0)
/* 184BF0 80256310 C6420188 */ lwc1 $f2, 0x188($s2)
/* 184BF4 80256314 00431021 */ addu $v0, $v0, $v1
/* 184BF8 80256318 44820000 */ mtc1 $v0, $f0
/* 184BFC 8025631C 00000000 */ nop
/* 184C00 80256320 46800020 */ cvt.s.w $f0, $f0
/* 184C04 80256324 46020002 */ mul.s $f0, $f0, $f2
/* 184C08 80256328 00000000 */ nop
/* 184C0C 8025632C 4600028D */ trunc.w.s $f10, $f0
/* 184C10 80256330 E7AA0014 */ swc1 $f10, 0x14($sp)
/* 184C14 80256334 8E420008 */ lw $v0, 8($s2)
/* 184C18 80256338 82430196 */ lb $v1, 0x196($s2)
/* 184C1C 8025633C 80420026 */ lb $v0, 0x26($v0)
/* 184C20 80256340 C6420188 */ lwc1 $f2, 0x188($s2)
/* 184C24 80256344 00431021 */ addu $v0, $v0, $v1
/* 184C28 80256348 44820000 */ mtc1 $v0, $f0
/* 184C2C 8025634C 00000000 */ nop
/* 184C30 80256350 46800020 */ cvt.s.w $f0, $f0
/* 184C34 80256354 46020002 */ mul.s $f0, $f0, $f2
/* 184C38 80256358 00000000 */ nop
/* 184C3C 8025635C 4600028D */ trunc.w.s $f10, $f0
/* 184C40 80256360 E7AA0018 */ swc1 $f10, 0x18($sp)
/* 184C44 80256364 8E420008 */ lw $v0, 8($s2)
/* 184C48 80256368 82430197 */ lb $v1, 0x197($s2)
/* 184C4C 8025636C 80420027 */ lb $v0, 0x27($v0)
/* 184C50 80256370 C6420188 */ lwc1 $f2, 0x188($s2)
/* 184C54 80256374 00431021 */ addu $v0, $v0, $v1
/* 184C58 80256378 44820000 */ mtc1 $v0, $f0
/* 184C5C 8025637C 00000000 */ nop
/* 184C60 80256380 46800020 */ cvt.s.w $f0, $f0
/* 184C64 80256384 46020002 */ mul.s $f0, $f0, $f2
/* 184C68 80256388 00000000 */ nop
/* 184C6C 8025638C 8FA50364 */ lw $a1, 0x364($sp)
/* 184C70 80256390 4406F000 */ mfc1 $a2, $f30
/* 184C74 80256394 8FA70368 */ lw $a3, 0x368($sp)
/* 184C78 80256398 4600028D */ trunc.w.s $f10, $f0
/* 184C7C 8025639C 0C011DE3 */ jal func_8004778C
/* 184C80 802563A0 E7AA001C */ swc1 $f10, 0x1c($sp)
/* 184C84 802563A4 8E420000 */ lw $v0, ($s2)
/* 184C88 802563A8 30420800 */ andi $v0, $v0, 0x800
/* 184C8C 802563AC 14400010 */ bnez $v0, .L802563F0
/* 184C90 802563B0 00000000 */ nop
/* 184C94 802563B4 92420191 */ lbu $v0, 0x191($s2)
/* 184C98 802563B8 080958FF */ j .L802563FC
/* 184C9C 802563BC C6440188 */ lwc1 $f4, 0x188($s2)
.L802563C0:
/* 184CA0 802563C0 C6400188 */ lwc1 $f0, 0x188($s2)
/* 184CA4 802563C4 3C01802A */ lui $at, %hi(D_8029D368)
/* 184CA8 802563C8 D422D368 */ ldc1 $f2, %lo(D_8029D368)($at)
/* 184CAC 802563CC 46000021 */ cvt.d.s $f0, $f0
/* 184CB0 802563D0 46201081 */ sub.d $f2, $f2, $f0
/* 184CB4 802563D4 3C014018 */ lui $at, 0x4018
/* 184CB8 802563D8 44812800 */ mtc1 $at, $f5
/* 184CBC 802563DC 44802000 */ mtc1 $zero, $f4
/* 184CC0 802563E0 00000000 */ nop
/* 184CC4 802563E4 46241083 */ div.d $f2, $f2, $f4
/* 184CC8 802563E8 08095921 */ j .L80256484
/* 184CCC 802563EC 46220000 */ add.d $f0, $f0, $f2
.L802563F0:
/* 184CD0 802563F0 92420191 */ lbu $v0, 0x191($s2)
/* 184CD4 802563F4 C6440188 */ lwc1 $f4, 0x188($s2)
/* 184CD8 802563F8 00021023 */ negu $v0, $v0
.L802563FC:
/* 184CDC 802563FC 44821000 */ mtc1 $v0, $f2
/* 184CE0 80256400 00000000 */ nop
/* 184CE4 80256404 468010A0 */ cvt.s.w $f2, $f2
/* 184CE8 80256408 46041082 */ mul.s $f2, $f2, $f4
/* 184CEC 8025640C 00000000 */ nop
/* 184CF0 80256410 92420190 */ lbu $v0, 0x190($s2)
/* 184CF4 80256414 44820000 */ mtc1 $v0, $f0
/* 184CF8 80256418 00000000 */ nop
/* 184CFC 8025641C 46800020 */ cvt.s.w $f0, $f0
/* 184D00 80256420 46040002 */ mul.s $f0, $f0, $f4
/* 184D04 80256424 00000000 */ nop
/* 184D08 80256428 86440436 */ lh $a0, 0x436($s2)
/* 184D0C 8025642C 4600128D */ trunc.w.s $f10, $f2
/* 184D10 80256430 44055000 */ mfc1 $a1, $f10
/* 184D14 80256434 4600028D */ trunc.w.s $f10, $f0
/* 184D18 80256438 44065000 */ mfc1 $a2, $f10
/* 184D1C 8025643C 0C011DFD */ jal func_800477F4
/* 184D20 80256440 00000000 */ nop
/* 184D24 80256444 82430210 */ lb $v1, 0x210($s2)
/* 184D28 80256448 2402000A */ addiu $v0, $zero, 0xa
/* 184D2C 8025644C 1062FFDC */ beq $v1, $v0, .L802563C0
/* 184D30 80256450 00000000 */ nop
/* 184D34 80256454 C6400188 */ lwc1 $f0, 0x188($s2)
/* 184D38 80256458 3C013FF0 */ lui $at, 0x3ff0
/* 184D3C 8025645C 44812800 */ mtc1 $at, $f5
/* 184D40 80256460 44802000 */ mtc1 $zero, $f4
/* 184D44 80256464 46000021 */ cvt.d.s $f0, $f0
/* 184D48 80256468 46202101 */ sub.d $f4, $f4, $f0
/* 184D4C 8025646C 3C014018 */ lui $at, 0x4018
/* 184D50 80256470 44811800 */ mtc1 $at, $f3
/* 184D54 80256474 44801000 */ mtc1 $zero, $f2
/* 184D58 80256478 00000000 */ nop
/* 184D5C 8025647C 46222103 */ div.d $f4, $f4, $f2
/* 184D60 80256480 46240000 */ add.d $f0, $f0, $f4
.L80256484:
/* 184D64 80256484 46200020 */ cvt.s.d $f0, $f0
/* 184D68 80256488 E6400188 */ swc1 $f0, 0x188($s2)
/* 184D6C 8025648C 8E420000 */ lw $v0, ($s2)
/* 184D70 80256490 30420800 */ andi $v0, $v0, 0x800
/* 184D74 80256494 14400025 */ bnez $v0, .L8025652C
/* 184D78 80256498 00000000 */ nop
/* 184D7C 8025649C 86420168 */ lh $v0, 0x168($s2)
/* 184D80 802564A0 C6420188 */ lwc1 $f2, 0x188($s2)
/* 184D84 802564A4 00021023 */ negu $v0, $v0
/* 184D88 802564A8 44820000 */ mtc1 $v0, $f0
/* 184D8C 802564AC 00000000 */ nop
/* 184D90 802564B0 46800020 */ cvt.s.w $f0, $f0
/* 184D94 802564B4 46020002 */ mul.s $f0, $f0, $f2
/* 184D98 802564B8 00000000 */ nop
/* 184D9C 802564BC 8642016A */ lh $v0, 0x16a($s2)
/* 184DA0 802564C0 00021023 */ negu $v0, $v0
/* 184DA4 802564C4 44050000 */ mfc1 $a1, $f0
/* 184DA8 802564C8 44820000 */ mtc1 $v0, $f0
/* 184DAC 802564CC 00000000 */ nop
/* 184DB0 802564D0 46800020 */ cvt.s.w $f0, $f0
/* 184DB4 802564D4 46020002 */ mul.s $f0, $f0, $f2
/* 184DB8 802564D8 00000000 */ nop
/* 184DBC 802564DC 8642016C */ lh $v0, 0x16c($s2)
/* 184DC0 802564E0 00021023 */ negu $v0, $v0
/* 184DC4 802564E4 44060000 */ mfc1 $a2, $f0
/* 184DC8 802564E8 44820000 */ mtc1 $v0, $f0
/* 184DCC 802564EC 00000000 */ nop
/* 184DD0 802564F0 46800020 */ cvt.s.w $f0, $f0
/* 184DD4 802564F4 46020002 */ mul.s $f0, $f0, $f2
/* 184DD8 802564F8 00000000 */ nop
/* 184DDC 802564FC 44070000 */ mfc1 $a3, $f0
/* 184DE0 80256500 0C019E40 */ jal guTranslateF
/* 184DE4 80256504 27A401A0 */ addiu $a0, $sp, 0x1a0
/* 184DE8 80256508 86420168 */ lh $v0, 0x168($s2)
/* 184DEC 8025650C C6420188 */ lwc1 $f2, 0x188($s2)
/* 184DF0 80256510 44820000 */ mtc1 $v0, $f0
/* 184DF4 80256514 00000000 */ nop
/* 184DF8 80256518 46800020 */ cvt.s.w $f0, $f0
/* 184DFC 8025651C 46020002 */ mul.s $f0, $f0, $f2
/* 184E00 80256520 00000000 */ nop
/* 184E04 80256524 0809596E */ j .L802565B8
/* 184E08 80256528 8642016A */ lh $v0, 0x16a($s2)
.L8025652C:
/* 184E0C 8025652C 86420168 */ lh $v0, 0x168($s2)
/* 184E10 80256530 C6420188 */ lwc1 $f2, 0x188($s2)
/* 184E14 80256534 00021023 */ negu $v0, $v0
/* 184E18 80256538 44820000 */ mtc1 $v0, $f0
/* 184E1C 8025653C 00000000 */ nop
/* 184E20 80256540 46800020 */ cvt.s.w $f0, $f0
/* 184E24 80256544 46020002 */ mul.s $f0, $f0, $f2
/* 184E28 80256548 00000000 */ nop
/* 184E2C 8025654C 8642016A */ lh $v0, 0x16a($s2)
/* 184E30 80256550 44050000 */ mfc1 $a1, $f0
/* 184E34 80256554 44820000 */ mtc1 $v0, $f0
/* 184E38 80256558 00000000 */ nop
/* 184E3C 8025655C 46800020 */ cvt.s.w $f0, $f0
/* 184E40 80256560 46020002 */ mul.s $f0, $f0, $f2
/* 184E44 80256564 00000000 */ nop
/* 184E48 80256568 8642016C */ lh $v0, 0x16c($s2)
/* 184E4C 8025656C 00021023 */ negu $v0, $v0
/* 184E50 80256570 44060000 */ mfc1 $a2, $f0
/* 184E54 80256574 44820000 */ mtc1 $v0, $f0
/* 184E58 80256578 00000000 */ nop
/* 184E5C 8025657C 46800020 */ cvt.s.w $f0, $f0
/* 184E60 80256580 46020002 */ mul.s $f0, $f0, $f2
/* 184E64 80256584 00000000 */ nop
/* 184E68 80256588 44070000 */ mfc1 $a3, $f0
/* 184E6C 8025658C 0C019E40 */ jal guTranslateF
/* 184E70 80256590 27A401A0 */ addiu $a0, $sp, 0x1a0
/* 184E74 80256594 86420168 */ lh $v0, 0x168($s2)
/* 184E78 80256598 C6420188 */ lwc1 $f2, 0x188($s2)
/* 184E7C 8025659C 44820000 */ mtc1 $v0, $f0
/* 184E80 802565A0 00000000 */ nop
/* 184E84 802565A4 46800020 */ cvt.s.w $f0, $f0
/* 184E88 802565A8 46020002 */ mul.s $f0, $f0, $f2
/* 184E8C 802565AC 00000000 */ nop
/* 184E90 802565B0 8642016A */ lh $v0, 0x16a($s2)
/* 184E94 802565B4 00021023 */ negu $v0, $v0
.L802565B8:
/* 184E98 802565B8 44050000 */ mfc1 $a1, $f0
/* 184E9C 802565BC 44820000 */ mtc1 $v0, $f0
/* 184EA0 802565C0 00000000 */ nop
/* 184EA4 802565C4 46800020 */ cvt.s.w $f0, $f0
/* 184EA8 802565C8 46020002 */ mul.s $f0, $f0, $f2
/* 184EAC 802565CC 00000000 */ nop
/* 184EB0 802565D0 8642016C */ lh $v0, 0x16c($s2)
/* 184EB4 802565D4 44060000 */ mfc1 $a2, $f0
/* 184EB8 802565D8 44820000 */ mtc1 $v0, $f0
/* 184EBC 802565DC 00000000 */ nop
/* 184EC0 802565E0 46800020 */ cvt.s.w $f0, $f0
/* 184EC4 802565E4 46020002 */ mul.s $f0, $f0, $f2
/* 184EC8 802565E8 00000000 */ nop
/* 184ECC 802565EC 44070000 */ mfc1 $a3, $f0
/* 184ED0 802565F0 0C019E40 */ jal guTranslateF
/* 184ED4 802565F4 27A401E0 */ addiu $a0, $sp, 0x1e0
/* 184ED8 802565F8 4480A000 */ mtc1 $zero, $f20
/* 184EDC 802565FC 3C013F80 */ lui $at, 0x3f80
/* 184EE0 80256600 4481B000 */ mtc1 $at, $f22
/* 184EE4 80256604 E7B40010 */ swc1 $f20, 0x10($sp)
/* 184EE8 80256608 8E45015C */ lw $a1, 0x15c($s2)
/* 184EEC 8025660C 4406B000 */ mfc1 $a2, $f22
/* 184EF0 80256610 4407A000 */ mfc1 $a3, $f20
/* 184EF4 80256614 0C019EC8 */ jal guRotateF
/* 184EF8 80256618 27A40020 */ addiu $a0, $sp, 0x20
/* 184EFC 8025661C 27B50060 */ addiu $s5, $sp, 0x60
/* 184F00 80256620 E7B40010 */ swc1 $f20, 0x10($sp)
/* 184F04 80256624 8E450160 */ lw $a1, 0x160($s2)
/* 184F08 80256628 4406A000 */ mfc1 $a2, $f20
/* 184F0C 8025662C 4407B000 */ mfc1 $a3, $f22
/* 184F10 80256630 0C019EC8 */ jal guRotateF
/* 184F14 80256634 02A0202D */ daddu $a0, $s5, $zero
/* 184F18 80256638 27B000A0 */ addiu $s0, $sp, 0xa0
/* 184F1C 8025663C E7B60010 */ swc1 $f22, 0x10($sp)
/* 184F20 80256640 8E450164 */ lw $a1, 0x164($s2)
/* 184F24 80256644 4406A000 */ mfc1 $a2, $f20
/* 184F28 80256648 4407A000 */ mfc1 $a3, $f20
/* 184F2C 8025664C 0C019EC8 */ jal guRotateF
/* 184F30 80256650 0200202D */ daddu $a0, $s0, $zero
/* 184F34 80256654 02A0202D */ daddu $a0, $s5, $zero
/* 184F38 80256658 27A50020 */ addiu $a1, $sp, 0x20
/* 184F3C 8025665C 27B30260 */ addiu $s3, $sp, 0x260
/* 184F40 80256660 0C019D80 */ jal guMtxCatF
/* 184F44 80256664 0260302D */ daddu $a2, $s3, $zero
/* 184F48 80256668 0260202D */ daddu $a0, $s3, $zero
/* 184F4C 8025666C 0200282D */ daddu $a1, $s0, $zero
/* 184F50 80256670 27B400E0 */ addiu $s4, $sp, 0xe0
/* 184F54 80256674 0C019D80 */ jal guMtxCatF
/* 184F58 80256678 0280302D */ daddu $a2, $s4, $zero
/* 184F5C 8025667C C6440170 */ lwc1 $f4, 0x170($s2)
/* 184F60 80256680 3C01802A */ lui $at, %hi(D_8029D370)
/* 184F64 80256684 D428D370 */ ldc1 $f8, %lo(D_8029D370)($at)
/* 184F68 80256688 46002121 */ cvt.d.s $f4, $f4
/* 184F6C 8025668C 46282102 */ mul.d $f4, $f4, $f8
/* 184F70 80256690 00000000 */ nop
/* 184F74 80256694 C6400174 */ lwc1 $f0, 0x174($s2)
/* 184F78 80256698 46000021 */ cvt.d.s $f0, $f0
/* 184F7C 8025669C 46280002 */ mul.d $f0, $f0, $f8
/* 184F80 802566A0 00000000 */ nop
/* 184F84 802566A4 C6420178 */ lwc1 $f2, 0x178($s2)
/* 184F88 802566A8 460010A1 */ cvt.d.s $f2, $f2
/* 184F8C 802566AC 46281082 */ mul.d $f2, $f2, $f8
/* 184F90 802566B0 00000000 */ nop
/* 184F94 802566B4 C6460188 */ lwc1 $f6, 0x188($s2)
/* 184F98 802566B8 460031A1 */ cvt.d.s $f6, $f6
/* 184F9C 802566BC 46262102 */ mul.d $f4, $f4, $f6
/* 184FA0 802566C0 00000000 */ nop
/* 184FA4 802566C4 46260002 */ mul.d $f0, $f0, $f6
/* 184FA8 802566C8 00000000 */ nop
/* 184FAC 802566CC 27B00120 */ addiu $s0, $sp, 0x120
/* 184FB0 802566D0 462010A0 */ cvt.s.d $f2, $f2
/* 184FB4 802566D4 44071000 */ mfc1 $a3, $f2
/* 184FB8 802566D8 46202120 */ cvt.s.d $f4, $f4
/* 184FBC 802566DC 46200020 */ cvt.s.d $f0, $f0
/* 184FC0 802566E0 44052000 */ mfc1 $a1, $f4
/* 184FC4 802566E4 44060000 */ mfc1 $a2, $f0
/* 184FC8 802566E8 0C019DF0 */ jal guScaleF
/* 184FCC 802566EC 0200202D */ daddu $a0, $s0, $zero
/* 184FD0 802566F0 27B10160 */ addiu $s1, $sp, 0x160
/* 184FD4 802566F4 8E45017C */ lw $a1, 0x17c($s2)
/* 184FD8 802566F8 8E460180 */ lw $a2, 0x180($s2)
/* 184FDC 802566FC 8E470184 */ lw $a3, 0x184($s2)
/* 184FE0 80256700 0C019DF0 */ jal guScaleF
/* 184FE4 80256704 0220202D */ daddu $a0, $s1, $zero
/* 184FE8 80256708 27A401A0 */ addiu $a0, $sp, 0x1a0
/* 184FEC 8025670C 0200282D */ daddu $a1, $s0, $zero
/* 184FF0 80256710 0C019D80 */ jal guMtxCatF
/* 184FF4 80256714 0260302D */ daddu $a2, $s3, $zero
/* 184FF8 80256718 0260202D */ daddu $a0, $s3, $zero
/* 184FFC 8025671C 0220282D */ daddu $a1, $s1, $zero
/* 185000 80256720 0C019D80 */ jal guMtxCatF
/* 185004 80256724 0200302D */ daddu $a2, $s0, $zero
/* 185008 80256728 0200202D */ daddu $a0, $s0, $zero
/* 18500C 8025672C 0280282D */ daddu $a1, $s4, $zero
/* 185010 80256730 27B002E0 */ addiu $s0, $sp, 0x2e0
/* 185014 80256734 0C019D80 */ jal guMtxCatF
/* 185018 80256738 0200302D */ daddu $a2, $s0, $zero
/* 18501C 8025673C 0200202D */ daddu $a0, $s0, $zero
/* 185020 80256740 27A501E0 */ addiu $a1, $sp, 0x1e0
/* 185024 80256744 0C019D80 */ jal guMtxCatF
/* 185028 80256748 27A602A0 */ addiu $a2, $sp, 0x2a0
/* 18502C 8025674C 824801F3 */ lb $t0, 0x1f3($s2)
/* 185030 80256750 AFA80360 */ sw $t0, 0x360($sp)
/* 185034 80256754 8E5101F4 */ lw $s1, 0x1f4($s2)
/* 185038 80256758 19000293 */ blez $t0, .L802571A8
/* 18503C 8025675C 0000B82D */ daddu $s7, $zero, $zero
/* 185040 80256760 4600A706 */ mov.s $f28, $f20
/* 185044 80256764 0260B02D */ daddu $s6, $s3, $zero
/* 185048 80256768 AFB5036C */ sw $s5, 0x36c($sp)
/* 18504C 8025676C 0200A82D */ daddu $s5, $s0, $zero
/* 185050 80256770 AFB40370 */ sw $s4, 0x370($sp)
.L80256774:
/* 185054 80256774 8E220000 */ lw $v0, ($s1)
/* 185058 80256778 3C030010 */ lui $v1, 0x10
/* 18505C 8025677C 00431024 */ and $v0, $v0, $v1
/* 185060 80256780 14400033 */ bnez $v0, .L80256850
/* 185064 80256784 27A40320 */ addiu $a0, $sp, 0x320
/* 185068 80256788 86220014 */ lh $v0, 0x14($s1)
/* 18506C 8025678C C7AA0364 */ lwc1 $f10, 0x364($sp)
/* 185070 80256790 44820000 */ mtc1 $v0, $f0
/* 185074 80256794 00000000 */ nop
/* 185078 80256798 46800020 */ cvt.s.w $f0, $f0
/* 18507C 8025679C 8622001A */ lh $v0, 0x1a($s1)
/* 185080 802567A0 46005000 */ add.s $f0, $f10, $f0
/* 185084 802567A4 44821000 */ mtc1 $v0, $f2
/* 185088 802567A8 00000000 */ nop
/* 18508C 802567AC 468010A0 */ cvt.s.w $f2, $f2
/* 185090 802567B0 8E420000 */ lw $v0, ($s2)
/* 185094 802567B4 30420800 */ andi $v0, $v0, 0x800
/* 185098 802567B8 1440000C */ bnez $v0, .L802567EC
/* 18509C 802567BC 46020680 */ add.s $f26, $f0, $f2
/* 1850A0 802567C0 86220016 */ lh $v0, 0x16($s1)
/* 1850A4 802567C4 44821000 */ mtc1 $v0, $f2
/* 1850A8 802567C8 00000000 */ nop
/* 1850AC 802567CC 468010A0 */ cvt.s.w $f2, $f2
/* 1850B0 802567D0 8622001C */ lh $v0, 0x1c($s1)
/* 1850B4 802567D4 4602F080 */ add.s $f2, $f30, $f2
/* 1850B8 802567D8 44820000 */ mtc1 $v0, $f0
/* 1850BC 802567DC 00000000 */ nop
/* 1850C0 802567E0 46800020 */ cvt.s.w $f0, $f0
/* 1850C4 802567E4 08095A05 */ j .L80256814
/* 1850C8 802567E8 46001500 */ add.s $f20, $f2, $f0
.L802567EC:
/* 1850CC 802567EC 86220016 */ lh $v0, 0x16($s1)
/* 1850D0 802567F0 44821000 */ mtc1 $v0, $f2
/* 1850D4 802567F4 00000000 */ nop
/* 1850D8 802567F8 468010A0 */ cvt.s.w $f2, $f2
/* 1850DC 802567FC 8622001C */ lh $v0, 0x1c($s1)
/* 1850E0 80256800 4602F081 */ sub.s $f2, $f30, $f2
/* 1850E4 80256804 44820000 */ mtc1 $v0, $f0
/* 1850E8 80256808 00000000 */ nop
/* 1850EC 8025680C 46800020 */ cvt.s.w $f0, $f0
/* 1850F0 80256810 46001501 */ sub.s $f20, $f2, $f0
.L80256814:
/* 1850F4 80256814 C640018C */ lwc1 $f0, 0x18c($s2)
/* 1850F8 80256818 86220018 */ lh $v0, 0x18($s1)
/* 1850FC 8025681C C7AA0368 */ lwc1 $f10, 0x368($sp)
/* 185100 80256820 46000606 */ mov.s $f24, $f0
/* 185104 80256824 44821000 */ mtc1 $v0, $f2
/* 185108 80256828 00000000 */ nop
/* 18510C 8025682C 468010A0 */ cvt.s.w $f2, $f2
/* 185110 80256830 8622001E */ lh $v0, 0x1e($s1)
/* 185114 80256834 46025080 */ add.s $f2, $f10, $f2
/* 185118 80256838 E6380064 */ swc1 $f24, 0x64($s1)
/* 18511C 8025683C 44820000 */ mtc1 $v0, $f0
/* 185120 80256840 00000000 */ nop
/* 185124 80256844 46800020 */ cvt.s.w $f0, $f0
/* 185128 80256848 08095A3C */ j .L802568F0
/* 18512C 8025684C 46001580 */ add.s $f22, $f2, $f0
.L80256850:
/* 185130 80256850 C6480170 */ lwc1 $f8, 0x170($s2)
/* 185134 80256854 3C01802A */ lui $at, %hi(D_8029D378)
/* 185138 80256858 D420D378 */ ldc1 $f0, %lo(D_8029D378)($at)
/* 18513C 8025685C 46004221 */ cvt.d.s $f8, $f8
/* 185140 80256860 46204202 */ mul.d $f8, $f8, $f0
/* 185144 80256864 00000000 */ nop
/* 185148 80256868 C6460174 */ lwc1 $f6, 0x174($s2)
/* 18514C 8025686C 460031A1 */ cvt.d.s $f6, $f6
/* 185150 80256870 46203182 */ mul.d $f6, $f6, $f0
/* 185154 80256874 00000000 */ nop
/* 185158 80256878 C6420178 */ lwc1 $f2, 0x178($s2)
/* 18515C 8025687C 460010A1 */ cvt.d.s $f2, $f2
/* 185160 80256880 46201082 */ mul.d $f2, $f2, $f0
/* 185164 80256884 00000000 */ nop
/* 185168 80256888 8622001A */ lh $v0, 0x1a($s1)
/* 18516C 8025688C C624002C */ lwc1 $f4, 0x2c($s1)
/* 185170 80256890 44820000 */ mtc1 $v0, $f0
/* 185174 80256894 00000000 */ nop
/* 185178 80256898 46800020 */ cvt.s.w $f0, $f0
/* 18517C 8025689C 46002680 */ add.s $f26, $f4, $f0
/* 185180 802568A0 8622001C */ lh $v0, 0x1c($s1)
/* 185184 802568A4 C6240030 */ lwc1 $f4, 0x30($s1)
/* 185188 802568A8 44820000 */ mtc1 $v0, $f0
/* 18518C 802568AC 00000000 */ nop
/* 185190 802568B0 46800020 */ cvt.s.w $f0, $f0
/* 185194 802568B4 46002500 */ add.s $f20, $f4, $f0
/* 185198 802568B8 8622001E */ lh $v0, 0x1e($s1)
/* 18519C 802568BC C6240034 */ lwc1 $f4, 0x34($s1)
/* 1851A0 802568C0 44820000 */ mtc1 $v0, $f0
/* 1851A4 802568C4 00000000 */ nop
/* 1851A8 802568C8 46800020 */ cvt.s.w $f0, $f0
/* 1851AC 802568CC 46204220 */ cvt.s.d $f8, $f8
/* 1851B0 802568D0 462031A0 */ cvt.s.d $f6, $f6
/* 1851B4 802568D4 462010A0 */ cvt.s.d $f2, $f2
/* 1851B8 802568D8 44054000 */ mfc1 $a1, $f8
/* 1851BC 802568DC 44063000 */ mfc1 $a2, $f6
/* 1851C0 802568E0 44071000 */ mfc1 $a3, $f2
/* 1851C4 802568E4 0C019DF0 */ jal guScaleF
/* 1851C8 802568E8 46002580 */ add.s $f22, $f4, $f0
/* 1851CC 802568EC C6380064 */ lwc1 $f24, 0x64($s1)
.L802568F0:
/* 1851D0 802568F0 8E240000 */ lw $a0, ($s1)
/* 1851D4 802568F4 E63A0058 */ swc1 $f26, 0x58($s1)
/* 1851D8 802568F8 E634005C */ swc1 $f20, 0x5c($s1)
/* 1851DC 802568FC 30820001 */ andi $v0, $a0, 1
/* 1851E0 80256900 14400223 */ bnez $v0, .L80257190
/* 1851E4 80256904 E6360060 */ swc1 $f22, 0x60($s1)
/* 1851E8 80256908 8E220094 */ lw $v0, 0x94($s1)
/* 1851EC 8025690C 10400220 */ beqz $v0, .L80257190
/* 1851F0 80256910 2402000E */ addiu $v0, $zero, 0xe
/* 1851F4 80256914 82430218 */ lb $v1, 0x218($s2)
/* 1851F8 80256918 14620003 */ bne $v1, $v0, .L80256928
/* 1851FC 8025691C 2402FEFF */ addiu $v0, $zero, -0x101
/* 185200 80256920 08095A4B */ j .L8025692C
/* 185204 80256924 34820100 */ ori $v0, $a0, 0x100
.L80256928:
/* 185208 80256928 00821024 */ and $v0, $a0, $v0
.L8025692C:
/* 18520C 8025692C AE220000 */ sw $v0, ($s1)
/* 185210 80256930 0000982D */ daddu $s3, $zero, $zero
/* 185214 80256934 0260802D */ daddu $s0, $s3, $zero
/* 185218 80256938 8E3E0088 */ lw $fp, 0x88($s1)
/* 18521C 8025693C 8FA803D0 */ lw $t0, 0x3d0($sp)
/* 185220 80256940 11000027 */ beqz $t0, .L802569E0
/* 185224 80256944 0260A02D */ daddu $s4, $s3, $zero
/* 185228 80256948 3C02800E */ lui $v0, %hi(gBattleStatus+0x4)
/* 18522C 8025694C 8C42C074 */ lw $v0, %lo(gBattleStatus+0x4)($v0)
/* 185230 80256950 24030004 */ addiu $v1, $zero, 4
/* 185234 80256954 30420014 */ andi $v0, $v0, 0x14
/* 185238 80256958 14430015 */ bne $v0, $v1, .L802569B0
/* 18523C 8025695C 00000000 */ nop
/* 185240 80256960 82420216 */ lb $v0, 0x216($s2)
/* 185244 80256964 14400009 */ bnez $v0, .L8025698C
/* 185248 80256968 24050012 */ addiu $a1, $zero, 0x12
/* 18524C 8025696C 8E240094 */ lw $a0, 0x94($s1)
/* 185250 80256970 0C09973A */ jal func_80265CE8
/* 185254 80256974 24130001 */ addiu $s3, $zero, 1
/* 185258 80256978 8E240084 */ lw $a0, 0x84($s1)
/* 18525C 8025697C 8E260090 */ lw $a2, 0x90($s1)
/* 185260 80256980 0040282D */ daddu $a1, $v0, $zero
/* 185264 80256984 0C0B78AB */ jal func_802DE2AC
/* 185268 80256988 AE250088 */ sw $a1, 0x88($s1)
.L8025698C:
/* 18526C 8025698C 0240202D */ daddu $a0, $s2, $zero
/* 185270 80256990 0C099B6B */ jal func_80266DAC
/* 185274 80256994 2405000C */ addiu $a1, $zero, 0xc
/* 185278 80256998 24100001 */ addiu $s0, $zero, 1
/* 18527C 8025699C 0240202D */ daddu $a0, $s2, $zero
/* 185280 802569A0 0C099BBA */ jal func_80266EE8
/* 185284 802569A4 0000282D */ daddu $a1, $zero, $zero
/* 185288 802569A8 0200A02D */ daddu $s4, $s0, $zero
/* 18528C 802569AC 8FA803D0 */ lw $t0, 0x3d0($sp)
.L802569B0:
/* 185290 802569B0 1100000B */ beqz $t0, .L802569E0
/* 185294 802569B4 24020006 */ addiu $v0, $zero, 6
/* 185298 802569B8 3C038011 */ lui $v1, %hi(gPlayerData+0x12)
/* 18529C 802569BC 8063F2A2 */ lb $v1, %lo(gPlayerData+0x12)($v1)
/* 1852A0 802569C0 14620007 */ bne $v1, $v0, .L802569E0
/* 1852A4 802569C4 00000000 */ nop
/* 1852A8 802569C8 16000005 */ bnez $s0, .L802569E0
/* 1852AC 802569CC 24100001 */ addiu $s0, $zero, 1
/* 1852B0 802569D0 0240202D */ daddu $a0, $s2, $zero
/* 1852B4 802569D4 0C099B6B */ jal func_80266DAC
/* 1852B8 802569D8 24050009 */ addiu $a1, $zero, 9
/* 1852BC 802569DC 24100001 */ addiu $s0, $zero, 1
.L802569E0:
/* 1852C0 802569E0 82420220 */ lb $v0, 0x220($s2)
/* 1852C4 802569E4 10400007 */ beqz $v0, .L80256A04
/* 1852C8 802569E8 00000000 */ nop
/* 1852CC 802569EC 16800005 */ bnez $s4, .L80256A04
/* 1852D0 802569F0 24140001 */ addiu $s4, $zero, 1
/* 1852D4 802569F4 0240202D */ daddu $a0, $s2, $zero
/* 1852D8 802569F8 0C099BBA */ jal func_80266EE8
/* 1852DC 802569FC 2405000B */ addiu $a1, $zero, 0xb
/* 1852E0 80256A00 24140001 */ addiu $s4, $zero, 1
.L80256A04:
/* 1852E4 80256A04 82430210 */ lb $v1, 0x210($s2)
/* 1852E8 80256A08 24020009 */ addiu $v0, $zero, 9
/* 1852EC 80256A0C 14620009 */ bne $v1, $v0, .L80256A34
/* 1852F0 80256A10 24020005 */ addiu $v0, $zero, 5
/* 1852F4 80256A14 16000007 */ bnez $s0, .L80256A34
/* 1852F8 80256A18 24100001 */ addiu $s0, $zero, 1
/* 1852FC 80256A1C 0240202D */ daddu $a0, $s2, $zero
/* 185300 80256A20 0C099B6B */ jal func_80266DAC
/* 185304 80256A24 24050006 */ addiu $a1, $zero, 6
/* 185308 80256A28 24100001 */ addiu $s0, $zero, 1
/* 18530C 80256A2C 82430210 */ lb $v1, 0x210($s2)
/* 185310 80256A30 24020005 */ addiu $v0, $zero, 5
.L80256A34:
/* 185314 80256A34 14620007 */ bne $v1, $v0, .L80256A54
/* 185318 80256A38 00000000 */ nop
/* 18531C 80256A3C 16000005 */ bnez $s0, .L80256A54
/* 185320 80256A40 24100001 */ addiu $s0, $zero, 1
/* 185324 80256A44 0240202D */ daddu $a0, $s2, $zero
/* 185328 80256A48 0C099B6B */ jal func_80266DAC
/* 18532C 80256A4C 24050007 */ addiu $a1, $zero, 7
/* 185330 80256A50 24100001 */ addiu $s0, $zero, 1
.L80256A54:
/* 185334 80256A54 82430210 */ lb $v1, 0x210($s2)
/* 185338 80256A58 24020003 */ addiu $v0, $zero, 3
/* 18533C 80256A5C 14620007 */ bne $v1, $v0, .L80256A7C
/* 185340 80256A60 00000000 */ nop
/* 185344 80256A64 16000005 */ bnez $s0, .L80256A7C
/* 185348 80256A68 24100001 */ addiu $s0, $zero, 1
/* 18534C 80256A6C 0240202D */ daddu $a0, $s2, $zero
/* 185350 80256A70 0C099B6B */ jal func_80266DAC
/* 185354 80256A74 24050005 */ addiu $a1, $zero, 5
/* 185358 80256A78 24100001 */ addiu $s0, $zero, 1
.L80256A7C:
/* 18535C 80256A7C 82430212 */ lb $v1, 0x212($s2)
/* 185360 80256A80 2402000B */ addiu $v0, $zero, 0xb
/* 185364 80256A84 14620007 */ bne $v1, $v0, .L80256AA4
/* 185368 80256A88 00000000 */ nop
/* 18536C 80256A8C 16000005 */ bnez $s0, .L80256AA4
/* 185370 80256A90 24100001 */ addiu $s0, $zero, 1
/* 185374 80256A94 0240202D */ daddu $a0, $s2, $zero
/* 185378 80256A98 0C099B6B */ jal func_80266DAC
/* 18537C 80256A9C 24050004 */ addiu $a1, $zero, 4
/* 185380 80256AA0 24100001 */ addiu $s0, $zero, 1
.L80256AA4:
/* 185384 80256AA4 16000007 */ bnez $s0, .L80256AC4
/* 185388 80256AA8 3C030100 */ lui $v1, 0x100
/* 18538C 80256AAC 8E220000 */ lw $v0, ($s1)
/* 185390 80256AB0 00431024 */ and $v0, $v0, $v1
/* 185394 80256AB4 14400003 */ bnez $v0, .L80256AC4
/* 185398 80256AB8 0240202D */ daddu $a0, $s2, $zero
/* 18539C 80256ABC 0C099B6B */ jal func_80266DAC
/* 1853A0 80256AC0 0000282D */ daddu $a1, $zero, $zero
.L80256AC4:
/* 1853A4 80256AC4 16800007 */ bnez $s4, .L80256AE4
/* 1853A8 80256AC8 3C030100 */ lui $v1, 0x100
/* 1853AC 80256ACC 8E220000 */ lw $v0, ($s1)
/* 1853B0 80256AD0 00431024 */ and $v0, $v0, $v1
/* 1853B4 80256AD4 14400003 */ bnez $v0, .L80256AE4
/* 1853B8 80256AD8 0240202D */ daddu $a0, $s2, $zero
/* 1853BC 80256ADC 0C099BBA */ jal func_80266EE8
/* 1853C0 80256AE0 0000282D */ daddu $a1, $zero, $zero
.L80256AE4:
/* 1853C4 80256AE4 8E420000 */ lw $v0, ($s2)
/* 1853C8 80256AE8 3C030400 */ lui $v1, 0x400
/* 1853CC 80256AEC 00431024 */ and $v0, $v0, $v1
/* 1853D0 80256AF0 10400070 */ beqz $v0, .L80256CB4
/* 1853D4 80256AF4 3C032000 */ lui $v1, 0x2000
/* 1853D8 80256AF8 8E220000 */ lw $v0, ($s1)
/* 1853DC 80256AFC 00431024 */ and $v0, $v0, $v1
/* 1853E0 80256B00 1440006C */ bnez $v0, .L80256CB4
/* 1853E4 80256B04 24020007 */ addiu $v0, $zero, 7
/* 1853E8 80256B08 82430210 */ lb $v1, 0x210($s2)
/* 1853EC 80256B0C 10620012 */ beq $v1, $v0, .L80256B58
/* 1853F0 80256B10 00000000 */ nop
/* 1853F4 80256B14 2402000A */ addiu $v0, $zero, 0xa
/* 1853F8 80256B18 10620015 */ beq $v1, $v0, .L80256B70
/* 1853FC 80256B1C 24020009 */ addiu $v0, $zero, 9
/* 185400 80256B20 1062000D */ beq $v1, $v0, .L80256B58
/* 185404 80256B24 00000000 */ nop
/* 185408 80256B28 24020004 */ addiu $v0, $zero, 4
/* 18540C 80256B2C 1062000A */ beq $v1, $v0, .L80256B58
/* 185410 80256B30 00000000 */ nop
/* 185414 80256B34 24020003 */ addiu $v0, $zero, 3
/* 185418 80256B38 10620007 */ beq $v1, $v0, .L80256B58
/* 18541C 80256B3C 00000000 */ nop
/* 185420 80256B40 24020006 */ addiu $v0, $zero, 6
/* 185424 80256B44 10620004 */ beq $v1, $v0, .L80256B58
/* 185428 80256B48 00000000 */ nop
/* 18542C 80256B4C 24020005 */ addiu $v0, $zero, 5
/* 185430 80256B50 14620007 */ bne $v1, $v0, .L80256B70
/* 185434 80256B54 00000000 */ nop
.L80256B58:
/* 185438 80256B58 16600005 */ bnez $s3, .L80256B70
/* 18543C 80256B5C 0040282D */ daddu $a1, $v0, $zero
/* 185440 80256B60 8E240094 */ lw $a0, 0x94($s1)
/* 185444 80256B64 0C09973A */ jal func_80265CE8
/* 185448 80256B68 24130001 */ addiu $s3, $zero, 1
/* 18544C 80256B6C AE220088 */ sw $v0, 0x88($s1)
.L80256B70:
/* 185450 80256B70 82430212 */ lb $v1, 0x212($s2)
/* 185454 80256B74 2402000B */ addiu $v0, $zero, 0xb
/* 185458 80256B78 14620007 */ bne $v1, $v0, .L80256B98
/* 18545C 80256B7C 00000000 */ nop
/* 185460 80256B80 16600005 */ bnez $s3, .L80256B98
/* 185464 80256B84 0040282D */ daddu $a1, $v0, $zero
/* 185468 80256B88 8E240094 */ lw $a0, 0x94($s1)
/* 18546C 80256B8C 0C09973A */ jal func_80265CE8
/* 185470 80256B90 24130001 */ addiu $s3, $zero, 1
/* 185474 80256B94 AE220088 */ sw $v0, 0x88($s1)
.L80256B98:
/* 185478 80256B98 16600005 */ bnez $s3, .L80256BB0
/* 18547C 80256B9C 00000000 */ nop
/* 185480 80256BA0 8E240094 */ lw $a0, 0x94($s1)
/* 185484 80256BA4 0C09973A */ jal func_80265CE8
/* 185488 80256BA8 24050001 */ addiu $a1, $zero, 1
/* 18548C 80256BAC AE220088 */ sw $v0, 0x88($s1)
.L80256BB0:
/* 185490 80256BB0 8FA803D0 */ lw $t0, 0x3d0($sp)
/* 185494 80256BB4 11000014 */ beqz $t0, .L80256C08
/* 185498 80256BB8 2402000D */ addiu $v0, $zero, 0xd
/* 18549C 80256BBC 82430216 */ lb $v1, 0x216($s2)
/* 1854A0 80256BC0 14620004 */ bne $v1, $v0, .L80256BD4
/* 1854A4 80256BC4 0040282D */ daddu $a1, $v0, $zero
/* 1854A8 80256BC8 8E240094 */ lw $a0, 0x94($s1)
/* 1854AC 80256BCC 08095AFF */ j .L80256BFC
/* 1854B0 80256BD0 24130001 */ addiu $s3, $zero, 1
.L80256BD4:
/* 1854B4 80256BD4 8E240094 */ lw $a0, 0x94($s1)
/* 1854B8 80256BD8 0C09973A */ jal func_80265CE8
/* 1854BC 80256BDC 24050001 */ addiu $a1, $zero, 1
/* 1854C0 80256BE0 0040802D */ daddu $s0, $v0, $zero
/* 1854C4 80256BE4 8E240094 */ lw $a0, 0x94($s1)
/* 1854C8 80256BE8 0C09973A */ jal func_80265CE8
/* 1854CC 80256BEC 2405000D */ addiu $a1, $zero, 0xd
/* 1854D0 80256BF0 16020005 */ bne $s0, $v0, .L80256C08
/* 1854D4 80256BF4 24050001 */ addiu $a1, $zero, 1
/* 1854D8 80256BF8 8E240094 */ lw $a0, 0x94($s1)
.L80256BFC:
/* 1854DC 80256BFC 0C09973A */ jal func_80265CE8
/* 1854E0 80256C00 00000000 */ nop
/* 1854E4 80256C04 AE220088 */ sw $v0, 0x88($s1)
.L80256C08:
/* 1854E8 80256C08 82430210 */ lb $v1, 0x210($s2)
/* 1854EC 80256C0C 24020008 */ addiu $v0, $zero, 8
/* 1854F0 80256C10 14620019 */ bne $v1, $v0, .L80256C78
/* 1854F4 80256C14 00000000 */ nop
/* 1854F8 80256C18 8E240094 */ lw $a0, 0x94($s1)
/* 1854FC 80256C1C 0C09973A */ jal func_80265CE8
/* 185500 80256C20 0040282D */ daddu $a1, $v0, $zero
/* 185504 80256C24 AE220088 */ sw $v0, 0x88($s1)
/* 185508 80256C28 86440436 */ lh $a0, 0x436($s2)
/* 18550C 80256C2C 0C011E08 */ jal func_80047820
/* 185510 80256C30 24050008 */ addiu $a1, $zero, 8
/* 185514 80256C34 08095B2D */ j .L80256CB4
/* 185518 80256C38 00000000 */ nop
.L80256C3C:
/* 18551C 80256C3C 86440436 */ lh $a0, 0x436($s2)
/* 185520 80256C40 08095B44 */ j .L80256D10
/* 185524 80256C44 24050009 */ addiu $a1, $zero, 9
.L80256C48:
/* 185528 80256C48 86440436 */ lh $a0, 0x436($s2)
/* 18552C 80256C4C 08095B44 */ j .L80256D10
/* 185530 80256C50 24050004 */ addiu $a1, $zero, 4
.L80256C54:
/* 185534 80256C54 86440436 */ lh $a0, 0x436($s2)
/* 185538 80256C58 08095B44 */ j .L80256D10
/* 18553C 80256C5C 24050006 */ addiu $a1, $zero, 6
.L80256C60:
/* 185540 80256C60 86440436 */ lh $a0, 0x436($s2)
/* 185544 80256C64 08095B44 */ j .L80256D10
/* 185548 80256C68 24050005 */ addiu $a1, $zero, 5
.L80256C6C:
/* 18554C 80256C6C 86440436 */ lh $a0, 0x436($s2)
/* 185550 80256C70 08095B44 */ j .L80256D10
/* 185554 80256C74 2405000A */ addiu $a1, $zero, 0xa
.L80256C78:
/* 185558 80256C78 1660000E */ bnez $s3, .L80256CB4
/* 18555C 80256C7C 00000000 */ nop
/* 185560 80256C80 8E240094 */ lw $a0, 0x94($s1)
/* 185564 80256C84 0C09973A */ jal func_80265CE8
/* 185568 80256C88 24050001 */ addiu $a1, $zero, 1
/* 18556C 80256C8C 0040802D */ daddu $s0, $v0, $zero
/* 185570 80256C90 8E240094 */ lw $a0, 0x94($s1)
/* 185574 80256C94 0C09973A */ jal func_80265CE8
/* 185578 80256C98 24050008 */ addiu $a1, $zero, 8
/* 18557C 80256C9C 16020005 */ bne $s0, $v0, .L80256CB4
/* 185580 80256CA0 00000000 */ nop
/* 185584 80256CA4 8E240094 */ lw $a0, 0x94($s1)
/* 185588 80256CA8 0C09973A */ jal func_80265CE8
/* 18558C 80256CAC 24050001 */ addiu $a1, $zero, 1
/* 185590 80256CB0 AE220088 */ sw $v0, 0x88($s1)
.L80256CB4:
/* 185594 80256CB4 3C02800E */ lui $v0, %hi(gBattleStatus)
/* 185598 80256CB8 8C42C070 */ lw $v0, %lo(gBattleStatus)($v0)
/* 18559C 80256CBC 30420004 */ andi $v0, $v0, 4
/* 1855A0 80256CC0 1440002E */ bnez $v0, .L80256D7C
/* 1855A4 80256CC4 3C030800 */ lui $v1, 0x800
/* 1855A8 80256CC8 8E420000 */ lw $v0, ($s2)
/* 1855AC 80256CCC 00431024 */ and $v0, $v0, $v1
/* 1855B0 80256CD0 1040002A */ beqz $v0, .L80256D7C
/* 1855B4 80256CD4 24020009 */ addiu $v0, $zero, 9
/* 1855B8 80256CD8 82430210 */ lb $v1, 0x210($s2)
/* 1855BC 80256CDC 1062FFD7 */ beq $v1, $v0, .L80256C3C
/* 1855C0 80256CE0 24020004 */ addiu $v0, $zero, 4
/* 1855C4 80256CE4 1062FFD8 */ beq $v1, $v0, .L80256C48
/* 1855C8 80256CE8 24020006 */ addiu $v0, $zero, 6
/* 1855CC 80256CEC 1062FFD9 */ beq $v1, $v0, .L80256C54
/* 1855D0 80256CF0 24020005 */ addiu $v0, $zero, 5
/* 1855D4 80256CF4 1062FFDA */ beq $v1, $v0, .L80256C60
/* 1855D8 80256CF8 2402000A */ addiu $v0, $zero, 0xa
/* 1855DC 80256CFC 1062FFDB */ beq $v1, $v0, .L80256C6C
/* 1855E0 80256D00 24020007 */ addiu $v0, $zero, 7
/* 1855E4 80256D04 14620004 */ bne $v1, $v0, .L80256D18
/* 1855E8 80256D08 0040282D */ daddu $a1, $v0, $zero
/* 1855EC 80256D0C 86440436 */ lh $a0, 0x436($s2)
.L80256D10:
/* 1855F0 80256D10 0C011E08 */ jal func_80047820
/* 1855F4 80256D14 00000000 */ nop
.L80256D18:
/* 1855F8 80256D18 82430212 */ lb $v1, 0x212($s2)
/* 1855FC 80256D1C 2402000B */ addiu $v0, $zero, 0xb
/* 185600 80256D20 14620004 */ bne $v1, $v0, .L80256D34
/* 185604 80256D24 00000000 */ nop
/* 185608 80256D28 86440436 */ lh $a0, 0x436($s2)
/* 18560C 80256D2C 0C011E4A */ jal func_80047928
/* 185610 80256D30 0040282D */ daddu $a1, $v0, $zero
.L80256D34:
/* 185614 80256D34 82430218 */ lb $v1, 0x218($s2)
/* 185618 80256D38 2402000E */ addiu $v0, $zero, 0xe
/* 18561C 80256D3C 10620005 */ beq $v1, $v0, .L80256D54
/* 185620 80256D40 00000000 */ nop
/* 185624 80256D44 8E220000 */ lw $v0, ($s1)
/* 185628 80256D48 30420100 */ andi $v0, $v0, 0x100
/* 18562C 80256D4C 10400004 */ beqz $v0, .L80256D60
/* 185630 80256D50 00000000 */ nop
.L80256D54:
/* 185634 80256D54 86440436 */ lh $a0, 0x436($s2)
/* 185638 80256D58 0C011E8C */ jal func_80047A30
/* 18563C 80256D5C 2405000E */ addiu $a1, $zero, 0xe
.L80256D60:
/* 185640 80256D60 82420223 */ lb $v0, 0x223($s2)
/* 185644 80256D64 1040000D */ beqz $v0, .L80256D9C
/* 185648 80256D68 00000000 */ nop
/* 18564C 80256D6C 0C011ECE */ jal func_80047B38
/* 185650 80256D70 86440436 */ lh $a0, 0x436($s2)
/* 185654 80256D74 08095B67 */ j .L80256D9C
/* 185658 80256D78 00000000 */ nop
.L80256D7C:
/* 18565C 80256D7C 0C011E3E */ jal func_800478F8
/* 185660 80256D80 86440436 */ lh $a0, 0x436($s2)
/* 185664 80256D84 0C011E80 */ jal func_80047A00
/* 185668 80256D88 86440436 */ lh $a0, 0x436($s2)
/* 18566C 80256D8C 0C011EC2 */ jal func_80047B08
/* 185670 80256D90 86440436 */ lh $a0, 0x436($s2)
/* 185674 80256D94 0C011EF9 */ jal func_80047BE4
/* 185678 80256D98 86440436 */ lh $a0, 0x436($s2)
.L80256D9C:
/* 18567C 80256D9C 8E240084 */ lw $a0, 0x84($s1)
/* 185680 80256DA0 04800009 */ bltz $a0, .L80256DC8
/* 185684 80256DA4 00000000 */ nop
/* 185688 80256DA8 8E250088 */ lw $a1, 0x88($s1)
/* 18568C 80256DAC 13C50006 */ beq $fp, $a1, .L80256DC8
/* 185690 80256DB0 00000000 */ nop
/* 185694 80256DB4 0C0B78AB */ jal func_802DE2AC
/* 185698 80256DB8 8E260090 */ lw $a2, 0x90($s1)
/* 18569C 80256DBC 0C0B7972 */ jal func_802DE5C8
/* 1856A0 80256DC0 8E240084 */ lw $a0, 0x84($s1)
/* 1856A4 80256DC4 AE22008C */ sw $v0, 0x8c($s1)
.L80256DC8:
/* 1856A8 80256DC8 8E420000 */ lw $v0, ($s2)
/* 1856AC 80256DCC 30420800 */ andi $v0, $v0, 0x800
/* 1856B0 80256DD0 14400025 */ bnez $v0, .L80256E68
/* 1856B4 80256DD4 00000000 */ nop
/* 1856B8 80256DD8 86220044 */ lh $v0, 0x44($s1)
/* 1856BC 80256DDC C6420188 */ lwc1 $f2, 0x188($s2)
/* 1856C0 80256DE0 00021023 */ negu $v0, $v0
/* 1856C4 80256DE4 44820000 */ mtc1 $v0, $f0
/* 1856C8 80256DE8 00000000 */ nop
/* 1856CC 80256DEC 46800020 */ cvt.s.w $f0, $f0
/* 1856D0 80256DF0 46020002 */ mul.s $f0, $f0, $f2
/* 1856D4 80256DF4 00000000 */ nop
/* 1856D8 80256DF8 86220046 */ lh $v0, 0x46($s1)
/* 1856DC 80256DFC 00021023 */ negu $v0, $v0
/* 1856E0 80256E00 44050000 */ mfc1 $a1, $f0
/* 1856E4 80256E04 44820000 */ mtc1 $v0, $f0
/* 1856E8 80256E08 00000000 */ nop
/* 1856EC 80256E0C 46800020 */ cvt.s.w $f0, $f0
/* 1856F0 80256E10 46020002 */ mul.s $f0, $f0, $f2
/* 1856F4 80256E14 00000000 */ nop
/* 1856F8 80256E18 86220048 */ lh $v0, 0x48($s1)
/* 1856FC 80256E1C 00021023 */ negu $v0, $v0
/* 185700 80256E20 44060000 */ mfc1 $a2, $f0
/* 185704 80256E24 44820000 */ mtc1 $v0, $f0
/* 185708 80256E28 00000000 */ nop
/* 18570C 80256E2C 46800020 */ cvt.s.w $f0, $f0
/* 185710 80256E30 46020002 */ mul.s $f0, $f0, $f2
/* 185714 80256E34 00000000 */ nop
/* 185718 80256E38 44070000 */ mfc1 $a3, $f0
/* 18571C 80256E3C 0C019E40 */ jal guTranslateF
/* 185720 80256E40 27A401A0 */ addiu $a0, $sp, 0x1a0
/* 185724 80256E44 86220044 */ lh $v0, 0x44($s1)
/* 185728 80256E48 C6420188 */ lwc1 $f2, 0x188($s2)
/* 18572C 80256E4C 44820000 */ mtc1 $v0, $f0
/* 185730 80256E50 00000000 */ nop
/* 185734 80256E54 46800020 */ cvt.s.w $f0, $f0
/* 185738 80256E58 46020002 */ mul.s $f0, $f0, $f2
/* 18573C 80256E5C 00000000 */ nop
/* 185740 80256E60 08095BBD */ j .L80256EF4
/* 185744 80256E64 86220046 */ lh $v0, 0x46($s1)
.L80256E68:
/* 185748 80256E68 86220044 */ lh $v0, 0x44($s1)
/* 18574C 80256E6C C6420188 */ lwc1 $f2, 0x188($s2)
/* 185750 80256E70 00021023 */ negu $v0, $v0
/* 185754 80256E74 44820000 */ mtc1 $v0, $f0
/* 185758 80256E78 00000000 */ nop
/* 18575C 80256E7C 46800020 */ cvt.s.w $f0, $f0
/* 185760 80256E80 46020002 */ mul.s $f0, $f0, $f2
/* 185764 80256E84 00000000 */ nop
/* 185768 80256E88 86220046 */ lh $v0, 0x46($s1)
/* 18576C 80256E8C 44050000 */ mfc1 $a1, $f0
/* 185770 80256E90 44820000 */ mtc1 $v0, $f0
/* 185774 80256E94 00000000 */ nop
/* 185778 80256E98 46800020 */ cvt.s.w $f0, $f0
/* 18577C 80256E9C 46020002 */ mul.s $f0, $f0, $f2
/* 185780 80256EA0 00000000 */ nop
/* 185784 80256EA4 86220048 */ lh $v0, 0x48($s1)
/* 185788 80256EA8 00021023 */ negu $v0, $v0
/* 18578C 80256EAC 44060000 */ mfc1 $a2, $f0
/* 185790 80256EB0 44820000 */ mtc1 $v0, $f0
/* 185794 80256EB4 00000000 */ nop
/* 185798 80256EB8 46800020 */ cvt.s.w $f0, $f0
/* 18579C 80256EBC 46020002 */ mul.s $f0, $f0, $f2
/* 1857A0 80256EC0 00000000 */ nop
/* 1857A4 80256EC4 44070000 */ mfc1 $a3, $f0
/* 1857A8 80256EC8 0C019E40 */ jal guTranslateF
/* 1857AC 80256ECC 27A401A0 */ addiu $a0, $sp, 0x1a0
/* 1857B0 80256ED0 86220044 */ lh $v0, 0x44($s1)
/* 1857B4 80256ED4 C6420188 */ lwc1 $f2, 0x188($s2)
/* 1857B8 80256ED8 44820000 */ mtc1 $v0, $f0
/* 1857BC 80256EDC 00000000 */ nop
/* 1857C0 80256EE0 46800020 */ cvt.s.w $f0, $f0
/* 1857C4 80256EE4 46020002 */ mul.s $f0, $f0, $f2
/* 1857C8 80256EE8 00000000 */ nop
/* 1857CC 80256EEC 86220046 */ lh $v0, 0x46($s1)
/* 1857D0 80256EF0 00021023 */ negu $v0, $v0
.L80256EF4:
/* 1857D4 80256EF4 44050000 */ mfc1 $a1, $f0
/* 1857D8 80256EF8 44820000 */ mtc1 $v0, $f0
/* 1857DC 80256EFC 00000000 */ nop
/* 1857E0 80256F00 46800020 */ cvt.s.w $f0, $f0
/* 1857E4 80256F04 46020002 */ mul.s $f0, $f0, $f2
/* 1857E8 80256F08 00000000 */ nop
/* 1857EC 80256F0C 86220048 */ lh $v0, 0x48($s1)
/* 1857F0 80256F10 44060000 */ mfc1 $a2, $f0
/* 1857F4 80256F14 44820000 */ mtc1 $v0, $f0
/* 1857F8 80256F18 00000000 */ nop
/* 1857FC 80256F1C 46800020 */ cvt.s.w $f0, $f0
/* 185800 80256F20 46020002 */ mul.s $f0, $f0, $f2
/* 185804 80256F24 00000000 */ nop
/* 185808 80256F28 44070000 */ mfc1 $a3, $f0
/* 18580C 80256F2C 0C019E40 */ jal guTranslateF
/* 185810 80256F30 27A401E0 */ addiu $a0, $sp, 0x1e0
/* 185814 80256F34 86220068 */ lh $v0, 0x68($s1)
/* 185818 80256F38 44820000 */ mtc1 $v0, $f0
/* 18581C 80256F3C 00000000 */ nop
/* 185820 80256F40 46800020 */ cvt.s.w $f0, $f0
/* 185824 80256F44 4600D000 */ add.s $f0, $f26, $f0
/* 185828 80256F48 8622006A */ lh $v0, 0x6a($s1)
/* 18582C 80256F4C 44050000 */ mfc1 $a1, $f0
/* 185830 80256F50 44820000 */ mtc1 $v0, $f0
/* 185834 80256F54 00000000 */ nop
/* 185838 80256F58 46800020 */ cvt.s.w $f0, $f0
/* 18583C 80256F5C 4600A000 */ add.s $f0, $f20, $f0
/* 185840 80256F60 4407B000 */ mfc1 $a3, $f22
/* 185844 80256F64 44060000 */ mfc1 $a2, $f0
/* 185848 80256F68 0C019E40 */ jal guTranslateF
/* 18584C 80256F6C 27A40220 */ addiu $a0, $sp, 0x220
/* 185850 80256F70 E7BC0010 */ swc1 $f28, 0x10($sp)
/* 185854 80256F74 8E250038 */ lw $a1, 0x38($s1)
/* 185858 80256F78 3C063F80 */ lui $a2, 0x3f80
/* 18585C 80256F7C 4407E000 */ mfc1 $a3, $f28
/* 185860 80256F80 0C019EC8 */ jal guRotateF
/* 185864 80256F84 27A40020 */ addiu $a0, $sp, 0x20
/* 185868 80256F88 E7BC0010 */ swc1 $f28, 0x10($sp)
/* 18586C 80256F8C 8E25003C */ lw $a1, 0x3c($s1)
/* 185870 80256F90 4406E000 */ mfc1 $a2, $f28
/* 185874 80256F94 3C073F80 */ lui $a3, 0x3f80
/* 185878 80256F98 0C019EC8 */ jal guRotateF
/* 18587C 80256F9C 8FA4036C */ lw $a0, 0x36c($sp)
/* 185880 80256FA0 3C013F80 */ lui $at, 0x3f80
/* 185884 80256FA4 44815000 */ mtc1 $at, $f10
/* 185888 80256FA8 4406E000 */ mfc1 $a2, $f28
/* 18588C 80256FAC 4407E000 */ mfc1 $a3, $f28
/* 185890 80256FB0 27B000A0 */ addiu $s0, $sp, 0xa0
/* 185894 80256FB4 E7AA0010 */ swc1 $f10, 0x10($sp)
/* 185898 80256FB8 8E250040 */ lw $a1, 0x40($s1)
/* 18589C 80256FBC 0C019EC8 */ jal guRotateF
/* 1858A0 80256FC0 0200202D */ daddu $a0, $s0, $zero
/* 1858A4 80256FC4 27A50020 */ addiu $a1, $sp, 0x20
/* 1858A8 80256FC8 8FA4036C */ lw $a0, 0x36c($sp)
/* 1858AC 80256FCC 0C019D80 */ jal guMtxCatF
/* 1858B0 80256FD0 02C0302D */ daddu $a2, $s6, $zero
/* 1858B4 80256FD4 02C0202D */ daddu $a0, $s6, $zero
/* 1858B8 80256FD8 8FA60370 */ lw $a2, 0x370($sp)
/* 1858BC 80256FDC 0C019D80 */ jal guMtxCatF
/* 1858C0 80256FE0 0200282D */ daddu $a1, $s0, $zero
/* 1858C4 80256FE4 82220074 */ lb $v0, 0x74($s1)
/* 1858C8 80256FE8 C6220050 */ lwc1 $f2, 0x50($s1)
/* 1858CC 80256FEC 44820000 */ mtc1 $v0, $f0
/* 1858D0 80256FF0 00000000 */ nop
/* 1858D4 80256FF4 46800020 */ cvt.s.w $f0, $f0
/* 1858D8 80256FF8 46001082 */ mul.s $f2, $f2, $f0
/* 1858DC 80256FFC 00000000 */ nop
/* 1858E0 80257000 27B00120 */ addiu $s0, $sp, 0x120
/* 1858E4 80257004 8E25004C */ lw $a1, 0x4c($s1)
/* 1858E8 80257008 8E270054 */ lw $a3, 0x54($s1)
/* 1858EC 8025700C 44061000 */ mfc1 $a2, $f2
/* 1858F0 80257010 0C019DF0 */ jal guScaleF
/* 1858F4 80257014 0200202D */ daddu $a0, $s0, $zero
/* 1858F8 80257018 0200202D */ daddu $a0, $s0, $zero
/* 1858FC 8025701C 27A501A0 */ addiu $a1, $sp, 0x1a0
/* 185900 80257020 0C019D80 */ jal guMtxCatF
/* 185904 80257024 02A0302D */ daddu $a2, $s5, $zero
/* 185908 80257028 02A0202D */ daddu $a0, $s5, $zero
/* 18590C 8025702C 8FA50370 */ lw $a1, 0x370($sp)
/* 185910 80257030 0C019D80 */ jal guMtxCatF
/* 185914 80257034 02C0302D */ daddu $a2, $s6, $zero
/* 185918 80257038 02C0202D */ daddu $a0, $s6, $zero
/* 18591C 8025703C 27A501E0 */ addiu $a1, $sp, 0x1e0
/* 185920 80257040 0C019D80 */ jal guMtxCatF
/* 185924 80257044 02A0302D */ daddu $a2, $s5, $zero
/* 185928 80257048 8E220000 */ lw $v0, ($s1)
/* 18592C 8025704C 3C030010 */ lui $v1, 0x10
/* 185930 80257050 00431024 */ and $v0, $v0, $v1
/* 185934 80257054 14400003 */ bnez $v0, .L80257064
/* 185938 80257058 02A0202D */ daddu $a0, $s5, $zero
/* 18593C 8025705C 08095C1A */ j .L80257068
/* 185940 80257060 27A502A0 */ addiu $a1, $sp, 0x2a0
.L80257064:
/* 185944 80257064 27A50320 */ addiu $a1, $sp, 0x320
.L80257068:
/* 185948 80257068 0C019D80 */ jal guMtxCatF
/* 18594C 8025706C 02C0302D */ daddu $a2, $s6, $zero
/* 185950 80257070 27A40260 */ addiu $a0, $sp, 0x260
/* 185954 80257074 27A50220 */ addiu $a1, $sp, 0x220
/* 185958 80257078 0C019D80 */ jal guMtxCatF
/* 18595C 8025707C 02A0302D */ daddu $a2, $s5, $zero
/* 185960 80257080 86220068 */ lh $v0, 0x68($s1)
/* 185964 80257084 44821000 */ mtc1 $v0, $f2
/* 185968 80257088 00000000 */ nop
/* 18596C 8025708C 468010A0 */ cvt.s.w $f2, $f2
/* 185970 80257090 8622006A */ lh $v0, 0x6a($s1)
/* 185974 80257094 4602D080 */ add.s $f2, $f26, $f2
/* 185978 80257098 44820000 */ mtc1 $v0, $f0
/* 18597C 8025709C 00000000 */ nop
/* 185980 802570A0 46800020 */ cvt.s.w $f0, $f0
/* 185984 802570A4 8E220084 */ lw $v0, 0x84($s1)
/* 185988 802570A8 4600A000 */ add.s $f0, $f20, $f0
/* 18598C 802570AC E6360060 */ swc1 $f22, 0x60($s1)
/* 185990 802570B0 E6220058 */ swc1 $f2, 0x58($s1)
/* 185994 802570B4 04400036 */ bltz $v0, .L80257190
/* 185998 802570B8 E620005C */ swc1 $f0, 0x5c($s1)
/* 18599C 802570BC 8FA803D0 */ lw $t0, 0x3d0($sp)
/* 1859A0 802570C0 15000013 */ bnez $t0, .L80257110
/* 1859A4 802570C4 0220282D */ daddu $a1, $s1, $zero
/* 1859A8 802570C8 24040001 */ addiu $a0, $zero, 1
/* 1859AC 802570CC 4600C28D */ trunc.w.s $f10, $f24
/* 1859B0 802570D0 44105000 */ mfc1 $s0, $f10
/* 1859B4 802570D4 00000000 */ nop
/* 1859B8 802570D8 0200302D */ daddu $a2, $s0, $zero
/* 1859BC 802570DC 0C097210 */ jal func_8025C840
/* 1859C0 802570E0 0000382D */ daddu $a3, $zero, $zero
/* 1859C4 802570E4 24040001 */ addiu $a0, $zero, 1
/* 1859C8 802570E8 0220282D */ daddu $a1, $s1, $zero
/* 1859CC 802570EC 0200302D */ daddu $a2, $s0, $zero
/* 1859D0 802570F0 0C097332 */ jal func_8025CCC8
/* 1859D4 802570F4 0000382D */ daddu $a3, $zero, $zero
/* 1859D8 802570F8 AFA00010 */ sw $zero, 0x10($sp)
/* 1859DC 802570FC 24040001 */ addiu $a0, $zero, 1
/* 1859E0 80257100 0220282D */ daddu $a1, $s1, $zero
/* 1859E4 80257104 0200302D */ daddu $a2, $s0, $zero
/* 1859E8 80257108 08095C60 */ j .L80257180
/* 1859EC 8025710C 02A0382D */ daddu $a3, $s5, $zero
.L80257110:
/* 1859F0 80257110 3C014334 */ lui $at, 0x4334
/* 1859F4 80257114 4481A000 */ mtc1 $at, $f20
/* 1859F8 80257118 00000000 */ nop
/* 1859FC 8025711C 4618A501 */ sub.s $f20, $f20, $f24
/* 185A00 80257120 0C00A6C9 */ jal clamp_angle
/* 185A04 80257124 4600A306 */ mov.s $f12, $f20
/* 185A08 80257128 24040001 */ addiu $a0, $zero, 1
/* 185A0C 8025712C 0220282D */ daddu $a1, $s1, $zero
/* 185A10 80257130 4600028D */ trunc.w.s $f10, $f0
/* 185A14 80257134 44065000 */ mfc1 $a2, $f10
/* 185A18 80257138 0C097210 */ jal func_8025C840
/* 185A1C 8025713C 0000382D */ daddu $a3, $zero, $zero
/* 185A20 80257140 0C00A6C9 */ jal clamp_angle
/* 185A24 80257144 4600A306 */ mov.s $f12, $f20
/* 185A28 80257148 24040001 */ addiu $a0, $zero, 1
/* 185A2C 8025714C 0220282D */ daddu $a1, $s1, $zero
/* 185A30 80257150 4600028D */ trunc.w.s $f10, $f0
/* 185A34 80257154 44065000 */ mfc1 $a2, $f10
/* 185A38 80257158 0C097332 */ jal func_8025CCC8
/* 185A3C 8025715C 0000382D */ daddu $a3, $zero, $zero
/* 185A40 80257160 0C00A6C9 */ jal clamp_angle
/* 185A44 80257164 4600A306 */ mov.s $f12, $f20
/* 185A48 80257168 24040001 */ addiu $a0, $zero, 1
/* 185A4C 8025716C 0220282D */ daddu $a1, $s1, $zero
/* 185A50 80257170 4600028D */ trunc.w.s $f10, $f0
/* 185A54 80257174 44065000 */ mfc1 $a2, $f10
/* 185A58 80257178 02A0382D */ daddu $a3, $s5, $zero
/* 185A5C 8025717C AFA00010 */ sw $zero, 0x10($sp)
.L80257180:
/* 185A60 80257180 0C09647B */ jal func_802591EC
/* 185A64 80257184 00000000 */ nop
/* 185A68 80257188 0C0973B2 */ jal func_8025CEC8
/* 185A6C 8025718C 0220202D */ daddu $a0, $s1, $zero
.L80257190:
/* 185A70 80257190 8E31000C */ lw $s1, 0xc($s1)
/* 185A74 80257194 8FA80360 */ lw $t0, 0x360($sp)
/* 185A78 80257198 26F70001 */ addiu $s7, $s7, 1
/* 185A7C 8025719C 02E8102A */ slt $v0, $s7, $t0
/* 185A80 802571A0 1440FD74 */ bnez $v0, .L80256774
/* 185A84 802571A4 00000000 */ nop
.L802571A8:
/* 185A88 802571A8 8FBF039C */ lw $ra, 0x39c($sp)
/* 185A8C 802571AC 8FBE0398 */ lw $fp, 0x398($sp)
/* 185A90 802571B0 8FB70394 */ lw $s7, 0x394($sp)
/* 185A94 802571B4 8FB60390 */ lw $s6, 0x390($sp)
/* 185A98 802571B8 8FB5038C */ lw $s5, 0x38c($sp)
/* 185A9C 802571BC 8FB40388 */ lw $s4, 0x388($sp)
/* 185AA0 802571C0 8FB30384 */ lw $s3, 0x384($sp)
/* 185AA4 802571C4 8FB20380 */ lw $s2, 0x380($sp)
/* 185AA8 802571C8 8FB1037C */ lw $s1, 0x37c($sp)
/* 185AAC 802571CC 8FB00378 */ lw $s0, 0x378($sp)
/* 185AB0 802571D0 D7BE03C8 */ ldc1 $f30, 0x3c8($sp)
/* 185AB4 802571D4 D7BC03C0 */ ldc1 $f28, 0x3c0($sp)
/* 185AB8 802571D8 D7BA03B8 */ ldc1 $f26, 0x3b8($sp)
/* 185ABC 802571DC D7B803B0 */ ldc1 $f24, 0x3b0($sp)
/* 185AC0 802571E0 D7B603A8 */ ldc1 $f22, 0x3a8($sp)
/* 185AC4 802571E4 D7B403A0 */ ldc1 $f20, 0x3a0($sp)
/* 185AC8 802571E8 03E00008 */ jr $ra
/* 185ACC 802571EC 27BD03D0 */ addiu $sp, $sp, 0x3d0