### RAW ASSEMBLY INSTRUCTIONS:

glabel func_802752AC
/* 1A3B8C 802752AC 27BDFFB0 */  addiu     $sp, $sp, -0x50
/* 1A3B90 802752B0 AFB20020 */  sw        $s2, 0x20($sp)
/* 1A3B94 802752B4 3C12800E */  lui       $s2, %hi(gBattleStatus + 0xD8)
/* 1A3B98 802752B8 8E52C148 */  lw        $s2, %lo(gBattleStatus + 0xD8)($s2)
/* 1A3B9C 802752BC AFB30024 */  sw        $s3, 0x24($sp)
/* 1A3BA0 802752C0 0080982D */  daddu     $s3, $a0, $zero
/* 1A3BA4 802752C4 AFBF0028 */  sw        $ra, 0x28($sp)
/* 1A3BA8 802752C8 AFB1001C */  sw        $s1, 0x1C($sp)
/* 1A3BAC 802752CC AFB00018 */  sw        $s0, 0x18($sp)
/* 1A3BB0 802752D0 F7BA0048 */  sdc1      $f26, 0x48($sp)
/* 1A3BB4 802752D4 F7B80040 */  sdc1      $f24, 0x40($sp)
/* 1A3BB8 802752D8 F7B60038 */  sdc1      $f22, 0x38($sp)
/* 1A3BBC 802752DC F7B40030 */  sdc1      $f20, 0x30($sp)
/* 1A3BC0 802752E0 8E71000C */  lw        $s1, 0xC($s3)
/* 1A3BC4 802752E4 10A00019 */  beqz      $a1, .L8027534C
/* 1A3BC8 802752E8 2650000C */   addiu    $s0, $s2, 0xC
/* 1A3BCC 802752EC 8E250000 */  lw        $a1, 0x0($s1)
/* 1A3BD0 802752F0 0C0B1EAF */  jal       evt_get_variable
/* 1A3BD4 802752F4 26310004 */   addiu    $s1, $s1, 0x4
/* 1A3BD8 802752F8 A6420070 */  sh        $v0, 0x70($s2)
/* 1A3BDC 802752FC 8E250000 */  lw        $a1, 0x0($s1)
/* 1A3BE0 80275300 0C0B1EAF */  jal       evt_get_variable
/* 1A3BE4 80275304 0260202D */   daddu    $a0, $s3, $zero
/* 1A3BE8 80275308 A6420072 */  sh        $v0, 0x72($s2)
/* 1A3BEC 8027530C AE600070 */  sw        $zero, 0x70($s3)
/* 1A3BF0 80275310 86430072 */  lh        $v1, 0x72($s2)
/* 1A3BF4 80275314 24020001 */  addiu     $v0, $zero, 0x1
/* 1A3BF8 80275318 10620005 */  beq       $v1, $v0, .L80275330
/* 1A3BFC 8027531C 24020005 */   addiu    $v0, $zero, 0x5
/* 1A3C00 80275320 10620003 */  beq       $v1, $v0, .L80275330
/* 1A3C04 80275324 24020006 */   addiu    $v0, $zero, 0x6
/* 1A3C08 80275328 14620003 */  bne       $v1, $v0, .L80275338
/* 1A3C0C 8027532C 00000000 */   nop
.L80275330:
/* 1A3C10 80275330 2402000A */  addiu     $v0, $zero, 0xA
/* 1A3C14 80275334 AE620070 */  sw        $v0, 0x70($s3)
.L80275338:
/* 1A3C18 80275338 86030066 */  lh        $v1, 0x66($s0)
/* 1A3C1C 8027533C 24020002 */  addiu     $v0, $zero, 0x2
/* 1A3C20 80275340 14620002 */  bne       $v1, $v0, .L8027534C
/* 1A3C24 80275344 24020014 */   addiu    $v0, $zero, 0x14
/* 1A3C28 80275348 AE620070 */  sw        $v0, 0x70($s3)
.L8027534C:
/* 1A3C2C 8027534C 8E630070 */  lw        $v1, 0x70($s3)
/* 1A3C30 80275350 2402000A */  addiu     $v0, $zero, 0xA
/* 1A3C34 80275354 106200C0 */  beq       $v1, $v0, .L80275658
/* 1A3C38 80275358 2862000B */   slti     $v0, $v1, 0xB
/* 1A3C3C 8027535C 10400005 */  beqz      $v0, .L80275374
/* 1A3C40 80275360 24020014 */   addiu    $v0, $zero, 0x14
/* 1A3C44 80275364 10600007 */  beqz      $v1, .L80275384
/* 1A3C48 80275368 24020002 */   addiu    $v0, $zero, 0x2
/* 1A3C4C 8027536C 0809D679 */  j         .L802759E4
/* 1A3C50 80275370 00000000 */   nop
.L80275374:
/* 1A3C54 80275374 10620172 */  beq       $v1, $v0, .L80275940
/* 1A3C58 80275378 24020001 */   addiu    $v0, $zero, 0x1
/* 1A3C5C 8027537C 0809D677 */  j         .L802759DC
/* 1A3C60 80275380 00000000 */   nop
.L80275384:
/* 1A3C64 80275384 C6400144 */  lwc1      $f0, 0x144($s2)
/* 1A3C68 80275388 C618000C */  lwc1      $f24, 0xC($s0)
/* 1A3C6C 8027538C C61A0014 */  lwc1      $f26, 0x14($s0)
/* 1A3C70 80275390 E6000000 */  swc1      $f0, 0x0($s0)
/* 1A3C74 80275394 46000586 */  mov.s     $f22, $f0
/* 1A3C78 80275398 4406C000 */  mfc1      $a2, $f24
/* 1A3C7C 8027539C C6400148 */  lwc1      $f0, 0x148($s2)
/* 1A3C80 802753A0 4600B306 */  mov.s     $f12, $f22
/* 1A3C84 802753A4 E6000004 */  swc1      $f0, 0x4($s0)
/* 1A3C88 802753A8 C640014C */  lwc1      $f0, 0x14C($s2)
/* 1A3C8C 802753AC 4407D000 */  mfc1      $a3, $f26
/* 1A3C90 802753B0 46000506 */  mov.s     $f20, $f0
/* 1A3C94 802753B4 4600A386 */  mov.s     $f14, $f20
/* 1A3C98 802753B8 0C00A720 */  jal       atan2
/* 1A3C9C 802753BC E6140008 */   swc1     $f20, 0x8($s0)
/* 1A3CA0 802753C0 4600B306 */  mov.s     $f12, $f22
/* 1A3CA4 802753C4 4406C000 */  mfc1      $a2, $f24
/* 1A3CA8 802753C8 4407D000 */  mfc1      $a3, $f26
/* 1A3CAC 802753CC 4600A386 */  mov.s     $f14, $f20
/* 1A3CB0 802753D0 0C00A7B5 */  jal       dist2D
/* 1A3CB4 802753D4 E6000048 */   swc1     $f0, 0x48($s0)
/* 1A3CB8 802753D8 86020064 */  lh        $v0, 0x64($s0)
/* 1A3CBC 802753DC 46000106 */  mov.s     $f4, $f0
/* 1A3CC0 802753E0 14400012 */  bnez      $v0, .L8027542C
/* 1A3CC4 802753E4 E604004C */   swc1     $f4, 0x4C($s0)
/* 1A3CC8 802753E8 C6000040 */  lwc1      $f0, 0x40($s0)
/* 1A3CCC 802753EC C6020040 */  lwc1      $f2, 0x40($s0)
/* 1A3CD0 802753F0 46002003 */  div.s     $f0, $f4, $f0
/* 1A3CD4 802753F4 4600028D */  trunc.w.s $f10, $f0
/* 1A3CD8 802753F8 44035000 */  mfc1      $v1, $f10
/* 1A3CDC 802753FC 00000000 */  nop
/* 1A3CE0 80275400 00031400 */  sll       $v0, $v1, 16
/* 1A3CE4 80275404 00021403 */  sra       $v0, $v0, 16
/* 1A3CE8 80275408 44820000 */  mtc1      $v0, $f0
/* 1A3CEC 8027540C 00000000 */  nop
/* 1A3CF0 80275410 46800020 */  cvt.s.w   $f0, $f0
/* 1A3CF4 80275414 46020002 */  mul.s     $f0, $f0, $f2
/* 1A3CF8 80275418 00000000 */  nop
/* 1A3CFC 8027541C 46002086 */  mov.s     $f2, $f4
/* 1A3D00 80275420 A6030064 */  sh        $v1, 0x64($s0)
/* 1A3D04 80275424 0809D518 */  j         .L80275460
/* 1A3D08 80275428 46001201 */   sub.s    $f8, $f2, $f0
.L8027542C:
/* 1A3D0C 8027542C 44821000 */  mtc1      $v0, $f2
/* 1A3D10 80275430 00000000 */  nop
/* 1A3D14 80275434 468010A0 */  cvt.s.w   $f2, $f2
/* 1A3D18 80275438 86020064 */  lh        $v0, 0x64($s0)
/* 1A3D1C 8027543C 46022083 */  div.s     $f2, $f4, $f2
/* 1A3D20 80275440 44820000 */  mtc1      $v0, $f0
/* 1A3D24 80275444 00000000 */  nop
/* 1A3D28 80275448 46800020 */  cvt.s.w   $f0, $f0
/* 1A3D2C 8027544C 46020002 */  mul.s     $f0, $f0, $f2
/* 1A3D30 80275450 00000000 */  nop
/* 1A3D34 80275454 C604004C */  lwc1      $f4, 0x4C($s0)
/* 1A3D38 80275458 E6020040 */  swc1      $f2, 0x40($s0)
/* 1A3D3C 8027545C 46002201 */  sub.s     $f8, $f4, $f0
.L80275460:
/* 1A3D40 80275460 86030064 */  lh        $v1, 0x64($s0)
/* 1A3D44 80275464 1060029B */  beqz      $v1, .L80275ED4
/* 1A3D48 80275468 24020002 */   addiu    $v0, $zero, 0x2
/* 1A3D4C 8027546C 86020064 */  lh        $v0, 0x64($s0)
/* 1A3D50 80275470 C602000C */  lwc1      $f2, 0xC($s0)
/* 1A3D54 80275474 3C013FC9 */  lui       $at, (0x3FC90FD0 >> 16)
/* 1A3D58 80275478 34210FD0 */  ori       $at, $at, (0x3FC90FD0 & 0xFFFF)
/* 1A3D5C 8027547C 44810000 */  mtc1      $at, $f0
/* 1A3D60 80275480 C6040000 */  lwc1      $f4, 0x0($s0)
/* 1A3D64 80275484 44823000 */  mtc1      $v0, $f6
/* 1A3D68 80275488 00000000 */  nop
/* 1A3D6C 8027548C 468031A0 */  cvt.s.w   $f6, $f6
/* 1A3D70 80275490 46060003 */  div.s     $f0, $f0, $f6
/* 1A3D74 80275494 46041081 */  sub.s     $f2, $f2, $f4
/* 1A3D78 80275498 E600003C */  swc1      $f0, 0x3C($s0)
/* 1A3D7C 8027549C 44830000 */  mtc1      $v1, $f0
/* 1A3D80 802754A0 00000000 */  nop
/* 1A3D84 802754A4 46800020 */  cvt.s.w   $f0, $f0
/* 1A3D88 802754A8 46001083 */  div.s     $f2, $f2, $f0
/* 1A3D8C 802754AC C6000010 */  lwc1      $f0, 0x10($s0)
/* 1A3D90 802754B0 0000202D */  daddu     $a0, $zero, $zero
/* 1A3D94 802754B4 E6020030 */  swc1      $f2, 0x30($s0)
/* 1A3D98 802754B8 C6020004 */  lwc1      $f2, 0x4($s0)
/* 1A3D9C 802754BC 8E060058 */  lw        $a2, 0x58($s0)
/* 1A3DA0 802754C0 46020001 */  sub.s     $f0, $f0, $f2
/* 1A3DA4 802754C4 C6040014 */  lwc1      $f4, 0x14($s0)
/* 1A3DA8 802754C8 46003086 */  mov.s     $f2, $f6
/* 1A3DAC 802754CC 46020003 */  div.s     $f0, $f0, $f2
/* 1A3DB0 802754D0 C6020008 */  lwc1      $f2, 0x8($s0)
/* 1A3DB4 802754D4 0080282D */  daddu     $a1, $a0, $zero
/* 1A3DB8 802754D8 AE000044 */  sw        $zero, 0x44($s0)
/* 1A3DBC 802754DC E6000034 */  swc1      $f0, 0x34($s0)
/* 1A3DC0 802754E0 46003006 */  mov.s     $f0, $f6
/* 1A3DC4 802754E4 46022101 */  sub.s     $f4, $f4, $f2
/* 1A3DC8 802754E8 C6020040 */  lwc1      $f2, 0x40($s0)
/* 1A3DCC 802754EC 46004003 */  div.s     $f0, $f8, $f0
/* 1A3DD0 802754F0 46001080 */  add.s     $f2, $f2, $f0
/* 1A3DD4 802754F4 46062103 */  div.s     $f4, $f4, $f6
/* 1A3DD8 802754F8 E6040038 */  swc1      $f4, 0x38($s0)
/* 1A3DDC 802754FC 0C098F3F */  jal       set_animation
/* 1A3DE0 80275500 E6020040 */   swc1     $f2, 0x40($s0)
/* 1A3DE4 80275504 C640014C */  lwc1      $f0, 0x14C($s2)
/* 1A3DE8 80275508 24040160 */  addiu     $a0, $zero, 0x160
/* 1A3DEC 8027550C E7A00010 */  swc1      $f0, 0x10($sp)
/* 1A3DF0 80275510 8E460144 */  lw        $a2, 0x144($s2)
/* 1A3DF4 80275514 8E470148 */  lw        $a3, 0x148($s2)
/* 1A3DF8 80275518 0C052757 */  jal       sfx_play_sound_at_position
/* 1A3DFC 8027551C 0000282D */   daddu    $a1, $zero, $zero
/* 1A3E00 80275520 86030064 */  lh        $v1, 0x64($s0)
/* 1A3E04 80275524 24020168 */  addiu     $v0, $zero, 0x168
/* 1A3E08 80275528 14600002 */  bnez      $v1, .L80275534
/* 1A3E0C 8027552C 0043001A */   div      $zero, $v0, $v1
/* 1A3E10 80275530 0007000D */  break     7
.L80275534:
/* 1A3E14 80275534 2401FFFF */  addiu     $at, $zero, -0x1
/* 1A3E18 80275538 14610004 */  bne       $v1, $at, .L8027554C
/* 1A3E1C 8027553C 3C018000 */   lui      $at, (0x80000000 >> 16)
/* 1A3E20 80275540 14410002 */  bne       $v0, $at, .L8027554C
/* 1A3E24 80275544 00000000 */   nop
/* 1A3E28 80275548 0006000D */  break     6
.L8027554C:
/* 1A3E2C 8027554C 00001012 */  mflo      $v0
/* 1A3E30 80275550 3C0142B4 */  lui       $at, (0x42B40000 >> 16)
/* 1A3E34 80275554 44810000 */  mtc1      $at, $f0
/* 1A3E38 80275558 3C014234 */  lui       $at, (0x42340000 >> 16)
/* 1A3E3C 8027555C 44811000 */  mtc1      $at, $f2
/* 1A3E40 80275560 86030066 */  lh        $v1, 0x66($s0)
/* 1A3E44 80275564 E6000024 */  swc1      $f0, 0x24($s0)
/* 1A3E48 80275568 E6020050 */  swc1      $f2, 0x50($s0)
/* 1A3E4C 8027556C 44820000 */  mtc1      $v0, $f0
/* 1A3E50 80275570 00000000 */  nop
/* 1A3E54 80275574 46800020 */  cvt.s.w   $f0, $f0
/* 1A3E58 80275578 24020004 */  addiu     $v0, $zero, 0x4
/* 1A3E5C 8027557C 14620005 */  bne       $v1, $v0, .L80275594
/* 1A3E60 80275580 E6000028 */   swc1     $f0, 0x28($s0)
/* 1A3E64 80275584 3C014261 */  lui       $at, (0x42610000 >> 16)
/* 1A3E68 80275588 44810000 */  mtc1      $at, $f0
/* 1A3E6C 8027558C 00000000 */  nop
/* 1A3E70 80275590 E6000050 */  swc1      $f0, 0x50($s0)
.L80275594:
/* 1A3E74 80275594 86020066 */  lh        $v0, 0x66($s0)
/* 1A3E78 80275598 AE000018 */  sw        $zero, 0x18($s0)
/* 1A3E7C 8027559C 14400013 */  bnez      $v0, .L802755EC
/* 1A3E80 802755A0 AE00001C */   sw       $zero, 0x1C($s0)
/* 1A3E84 802755A4 C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A3E88 802755A8 3C0140C9 */  lui       $at, (0x40C90FD0 >> 16)
/* 1A3E8C 802755AC 34210FD0 */  ori       $at, $at, (0x40C90FD0 & 0xFFFF)
/* 1A3E90 802755B0 44810000 */  mtc1      $at, $f0
/* 1A3E94 802755B4 C6140044 */  lwc1      $f20, 0x44($s0)
/* 1A3E98 802755B8 46006302 */  mul.s     $f12, $f12, $f0
/* 1A3E9C 802755BC 00000000 */  nop
/* 1A3EA0 802755C0 C616003C */  lwc1      $f22, 0x3C($s0)
/* 1A3EA4 802755C4 4600A521 */  cvt.d.s   $f20, $f20
/* 1A3EA8 802755C8 3C0143B4 */  lui       $at, (0x43B40000 >> 16)
/* 1A3EAC 802755CC 44810000 */  mtc1      $at, $f0
/* 1A3EB0 802755D0 4600B5A1 */  cvt.d.s   $f22, $f22
/* 1A3EB4 802755D4 0C00A85B */  jal       sin_rad
/* 1A3EB8 802755D8 46006303 */   div.s    $f12, $f12, $f0
/* 1A3EBC 802755DC 3C01802A */  lui       $at, %hi(D_8029D8E8)
/* 1A3EC0 802755E0 D422D8E8 */  ldc1      $f2, %lo(D_8029D8E8)($at)
/* 1A3EC4 802755E4 0809D58C */  j         .L80275630
/* 1A3EC8 802755E8 46000021 */   cvt.d.s  $f0, $f0
.L802755EC:
/* 1A3ECC 802755EC C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A3ED0 802755F0 3C0140C9 */  lui       $at, (0x40C90FD0 >> 16)
/* 1A3ED4 802755F4 34210FD0 */  ori       $at, $at, (0x40C90FD0 & 0xFFFF)
/* 1A3ED8 802755F8 44810000 */  mtc1      $at, $f0
/* 1A3EDC 802755FC C6140044 */  lwc1      $f20, 0x44($s0)
/* 1A3EE0 80275600 46006302 */  mul.s     $f12, $f12, $f0
/* 1A3EE4 80275604 00000000 */  nop
/* 1A3EE8 80275608 C616003C */  lwc1      $f22, 0x3C($s0)
/* 1A3EEC 8027560C 4600A521 */  cvt.d.s   $f20, $f20
/* 1A3EF0 80275610 3C0143B4 */  lui       $at, (0x43B40000 >> 16)
/* 1A3EF4 80275614 44810000 */  mtc1      $at, $f0
/* 1A3EF8 80275618 4600B5A1 */  cvt.d.s   $f22, $f22
/* 1A3EFC 8027561C 0C00A85B */  jal       sin_rad
/* 1A3F00 80275620 46006303 */   div.s    $f12, $f12, $f0
/* 1A3F04 80275624 3C01802A */  lui       $at, %hi(D_8029D8F0)
/* 1A3F08 80275628 D422D8F0 */  ldc1      $f2, %lo(D_8029D8F0)($at)
/* 1A3F0C 8027562C 46000021 */  cvt.d.s   $f0, $f0
.L80275630:
/* 1A3F10 80275630 46220002 */  mul.d     $f0, $f0, $f2
/* 1A3F14 80275634 00000000 */  nop
/* 1A3F18 80275638 46360002 */  mul.d     $f0, $f0, $f22
/* 1A3F1C 8027563C 00000000 */  nop
/* 1A3F20 80275640 46360000 */  add.d     $f0, $f0, $f22
/* 1A3F24 80275644 4620A500 */  add.d     $f20, $f20, $f0
/* 1A3F28 80275648 4620A520 */  cvt.s.d   $f20, $f20
/* 1A3F2C 8027564C E6140044 */  swc1      $f20, 0x44($s0)
/* 1A3F30 80275650 0809D676 */  j         .L802759D8
/* 1A3F34 80275654 24020001 */   addiu    $v0, $zero, 0x1
.L80275658:
/* 1A3F38 80275658 C6400144 */  lwc1      $f0, 0x144($s2)
/* 1A3F3C 8027565C C618000C */  lwc1      $f24, 0xC($s0)
/* 1A3F40 80275660 C61A0014 */  lwc1      $f26, 0x14($s0)
/* 1A3F44 80275664 E6000000 */  swc1      $f0, 0x0($s0)
/* 1A3F48 80275668 46000586 */  mov.s     $f22, $f0
/* 1A3F4C 8027566C 4406C000 */  mfc1      $a2, $f24
/* 1A3F50 80275670 C6400148 */  lwc1      $f0, 0x148($s2)
/* 1A3F54 80275674 4600B306 */  mov.s     $f12, $f22
/* 1A3F58 80275678 E6000004 */  swc1      $f0, 0x4($s0)
/* 1A3F5C 8027567C C640014C */  lwc1      $f0, 0x14C($s2)
/* 1A3F60 80275680 4407D000 */  mfc1      $a3, $f26
/* 1A3F64 80275684 46000506 */  mov.s     $f20, $f0
/* 1A3F68 80275688 4600A386 */  mov.s     $f14, $f20
/* 1A3F6C 8027568C 0C00A720 */  jal       atan2
/* 1A3F70 80275690 E6140008 */   swc1     $f20, 0x8($s0)
/* 1A3F74 80275694 4600B306 */  mov.s     $f12, $f22
/* 1A3F78 80275698 4406C000 */  mfc1      $a2, $f24
/* 1A3F7C 8027569C 4407D000 */  mfc1      $a3, $f26
/* 1A3F80 802756A0 4600A386 */  mov.s     $f14, $f20
/* 1A3F84 802756A4 0C00A7B5 */  jal       dist2D
/* 1A3F88 802756A8 E6000048 */   swc1     $f0, 0x48($s0)
/* 1A3F8C 802756AC 86020064 */  lh        $v0, 0x64($s0)
/* 1A3F90 802756B0 46000106 */  mov.s     $f4, $f0
/* 1A3F94 802756B4 14400012 */  bnez      $v0, .L80275700
/* 1A3F98 802756B8 E604004C */   swc1     $f4, 0x4C($s0)
/* 1A3F9C 802756BC C6000040 */  lwc1      $f0, 0x40($s0)
/* 1A3FA0 802756C0 C6020040 */  lwc1      $f2, 0x40($s0)
/* 1A3FA4 802756C4 46002003 */  div.s     $f0, $f4, $f0
/* 1A3FA8 802756C8 4600028D */  trunc.w.s $f10, $f0
/* 1A3FAC 802756CC 44035000 */  mfc1      $v1, $f10
/* 1A3FB0 802756D0 00000000 */  nop
/* 1A3FB4 802756D4 00031400 */  sll       $v0, $v1, 16
/* 1A3FB8 802756D8 00021403 */  sra       $v0, $v0, 16
/* 1A3FBC 802756DC 44820000 */  mtc1      $v0, $f0
/* 1A3FC0 802756E0 00000000 */  nop
/* 1A3FC4 802756E4 46800020 */  cvt.s.w   $f0, $f0
/* 1A3FC8 802756E8 46020002 */  mul.s     $f0, $f0, $f2
/* 1A3FCC 802756EC 00000000 */  nop
/* 1A3FD0 802756F0 46002086 */  mov.s     $f2, $f4
/* 1A3FD4 802756F4 A6030064 */  sh        $v1, 0x64($s0)
/* 1A3FD8 802756F8 0809D5CD */  j         .L80275734
/* 1A3FDC 802756FC 46001201 */   sub.s    $f8, $f2, $f0
.L80275700:
/* 1A3FE0 80275700 44821000 */  mtc1      $v0, $f2
/* 1A3FE4 80275704 00000000 */  nop
/* 1A3FE8 80275708 468010A0 */  cvt.s.w   $f2, $f2
/* 1A3FEC 8027570C 86020064 */  lh        $v0, 0x64($s0)
/* 1A3FF0 80275710 46022083 */  div.s     $f2, $f4, $f2
/* 1A3FF4 80275714 44820000 */  mtc1      $v0, $f0
/* 1A3FF8 80275718 00000000 */  nop
/* 1A3FFC 8027571C 46800020 */  cvt.s.w   $f0, $f0
/* 1A4000 80275720 46020002 */  mul.s     $f0, $f0, $f2
/* 1A4004 80275724 00000000 */  nop
/* 1A4008 80275728 C604004C */  lwc1      $f4, 0x4C($s0)
/* 1A400C 8027572C E6020040 */  swc1      $f2, 0x40($s0)
/* 1A4010 80275730 46002201 */  sub.s     $f8, $f4, $f0
.L80275734:
/* 1A4014 80275734 86030064 */  lh        $v1, 0x64($s0)
/* 1A4018 80275738 106001DD */  beqz      $v1, .L80275EB0
/* 1A401C 8027573C 0000202D */   daddu    $a0, $zero, $zero
/* 1A4020 80275740 8E060060 */  lw        $a2, 0x60($s0)
/* 1A4024 80275744 3C013FC9 */  lui       $at, (0x3FC90FD0 >> 16)
/* 1A4028 80275748 34210FD0 */  ori       $at, $at, (0x3FC90FD0 & 0xFFFF)
/* 1A402C 8027574C 44810000 */  mtc1      $at, $f0
/* 1A4030 80275750 86020064 */  lh        $v0, 0x64($s0)
/* 1A4034 80275754 C602000C */  lwc1      $f2, 0xC($s0)
/* 1A4038 80275758 C6040000 */  lwc1      $f4, 0x0($s0)
/* 1A403C 8027575C 24420001 */  addiu     $v0, $v0, 0x1
/* 1A4040 80275760 44823000 */  mtc1      $v0, $f6
/* 1A4044 80275764 00000000 */  nop
/* 1A4048 80275768 468031A0 */  cvt.s.w   $f6, $f6
/* 1A404C 8027576C 46041081 */  sub.s     $f2, $f2, $f4
/* 1A4050 80275770 E6000044 */  swc1      $f0, 0x44($s0)
/* 1A4054 80275774 3C013F49 */  lui       $at, (0x3F490FD0 >> 16)
/* 1A4058 80275778 34210FD0 */  ori       $at, $at, (0x3F490FD0 & 0xFFFF)
/* 1A405C 8027577C 44810000 */  mtc1      $at, $f0
/* 1A4060 80275780 86020064 */  lh        $v0, 0x64($s0)
/* 1A4064 80275784 46060003 */  div.s     $f0, $f0, $f6
/* 1A4068 80275788 E600003C */  swc1      $f0, 0x3C($s0)
/* 1A406C 8027578C 44830000 */  mtc1      $v1, $f0
/* 1A4070 80275790 00000000 */  nop
/* 1A4074 80275794 46800020 */  cvt.s.w   $f0, $f0
/* 1A4078 80275798 46001083 */  div.s     $f2, $f2, $f0
/* 1A407C 8027579C C6000010 */  lwc1      $f0, 0x10($s0)
/* 1A4080 802757A0 E6020030 */  swc1      $f2, 0x30($s0)
/* 1A4084 802757A4 C6020004 */  lwc1      $f2, 0x4($s0)
/* 1A4088 802757A8 C6040014 */  lwc1      $f4, 0x14($s0)
/* 1A408C 802757AC 46020001 */  sub.s     $f0, $f0, $f2
/* 1A4090 802757B0 44821000 */  mtc1      $v0, $f2
/* 1A4094 802757B4 00000000 */  nop
/* 1A4098 802757B8 468010A0 */  cvt.s.w   $f2, $f2
/* 1A409C 802757BC 46001186 */  mov.s     $f6, $f2
/* 1A40A0 802757C0 46020003 */  div.s     $f0, $f0, $f2
/* 1A40A4 802757C4 C6020008 */  lwc1      $f2, 0x8($s0)
/* 1A40A8 802757C8 0080282D */  daddu     $a1, $a0, $zero
/* 1A40AC 802757CC E6000034 */  swc1      $f0, 0x34($s0)
/* 1A40B0 802757D0 46003006 */  mov.s     $f0, $f6
/* 1A40B4 802757D4 46022101 */  sub.s     $f4, $f4, $f2
/* 1A40B8 802757D8 C6020040 */  lwc1      $f2, 0x40($s0)
/* 1A40BC 802757DC 46004003 */  div.s     $f0, $f8, $f0
/* 1A40C0 802757E0 46001080 */  add.s     $f2, $f2, $f0
/* 1A40C4 802757E4 46062103 */  div.s     $f4, $f4, $f6
/* 1A40C8 802757E8 E6040038 */  swc1      $f4, 0x38($s0)
/* 1A40CC 802757EC 0C098F3F */  jal       set_animation
/* 1A40D0 802757F0 E6020040 */   swc1     $f2, 0x40($s0)
/* 1A40D4 802757F4 86030064 */  lh        $v1, 0x64($s0)
/* 1A40D8 802757F8 24020168 */  addiu     $v0, $zero, 0x168
/* 1A40DC 802757FC 14600002 */  bnez      $v1, .L80275808
/* 1A40E0 80275800 0043001A */   div      $zero, $v0, $v1
/* 1A40E4 80275804 0007000D */  break     7
.L80275808:
/* 1A40E8 80275808 2401FFFF */  addiu     $at, $zero, -0x1
/* 1A40EC 8027580C 14610004 */  bne       $v1, $at, .L80275820
/* 1A40F0 80275810 3C018000 */   lui      $at, (0x80000000 >> 16)
/* 1A40F4 80275814 14410002 */  bne       $v0, $at, .L80275820
/* 1A40F8 80275818 00000000 */   nop
/* 1A40FC 8027581C 0006000D */  break     6
.L80275820:
/* 1A4100 80275820 00001012 */  mflo      $v0
/* 1A4104 80275824 3C0142B4 */  lui       $at, (0x42B40000 >> 16)
/* 1A4108 80275828 44810000 */  mtc1      $at, $f0
/* 1A410C 8027582C 3C014234 */  lui       $at, (0x42340000 >> 16)
/* 1A4110 80275830 44811000 */  mtc1      $at, $f2
/* 1A4114 80275834 86030066 */  lh        $v1, 0x66($s0)
/* 1A4118 80275838 E6000024 */  swc1      $f0, 0x24($s0)
/* 1A411C 8027583C E6020050 */  swc1      $f2, 0x50($s0)
/* 1A4120 80275840 44820000 */  mtc1      $v0, $f0
/* 1A4124 80275844 00000000 */  nop
/* 1A4128 80275848 46800020 */  cvt.s.w   $f0, $f0
/* 1A412C 8027584C 24020005 */  addiu     $v0, $zero, 0x5
/* 1A4130 80275850 14620005 */  bne       $v1, $v0, .L80275868
/* 1A4134 80275854 E6000028 */   swc1     $f0, 0x28($s0)
/* 1A4138 80275858 3C014261 */  lui       $at, (0x42610000 >> 16)
/* 1A413C 8027585C 44810000 */  mtc1      $at, $f0
/* 1A4140 80275860 00000000 */  nop
/* 1A4144 80275864 E6000050 */  swc1      $f0, 0x50($s0)
.L80275868:
/* 1A4148 80275868 86030066 */  lh        $v1, 0x66($s0)
/* 1A414C 8027586C 24020001 */  addiu     $v0, $zero, 0x1
/* 1A4150 80275870 AE000018 */  sw        $zero, 0x18($s0)
/* 1A4154 80275874 14620013 */  bne       $v1, $v0, .L802758C4
/* 1A4158 80275878 AE00001C */   sw       $zero, 0x1C($s0)
/* 1A415C 8027587C C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A4160 80275880 3C0140C9 */  lui       $at, (0x40C90FD0 >> 16)
/* 1A4164 80275884 34210FD0 */  ori       $at, $at, (0x40C90FD0 & 0xFFFF)
/* 1A4168 80275888 44810000 */  mtc1      $at, $f0
/* 1A416C 8027588C C6140044 */  lwc1      $f20, 0x44($s0)
/* 1A4170 80275890 46006302 */  mul.s     $f12, $f12, $f0
/* 1A4174 80275894 00000000 */  nop
/* 1A4178 80275898 C616003C */  lwc1      $f22, 0x3C($s0)
/* 1A417C 8027589C 4600A521 */  cvt.d.s   $f20, $f20
/* 1A4180 802758A0 3C0143B4 */  lui       $at, (0x43B40000 >> 16)
/* 1A4184 802758A4 44810000 */  mtc1      $at, $f0
/* 1A4188 802758A8 4600B5A1 */  cvt.d.s   $f22, $f22
/* 1A418C 802758AC 0C00A85B */  jal       sin_rad
/* 1A4190 802758B0 46006303 */   div.s    $f12, $f12, $f0
/* 1A4194 802758B4 3C01802A */  lui       $at, %hi(D_8029D8F8)
/* 1A4198 802758B8 D422D8F8 */  ldc1      $f2, %lo(D_8029D8F8)($at)
/* 1A419C 802758BC 0809D642 */  j         .L80275908
/* 1A41A0 802758C0 46000021 */   cvt.d.s  $f0, $f0
.L802758C4:
/* 1A41A4 802758C4 C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A41A8 802758C8 3C0140C9 */  lui       $at, (0x40C90FD0 >> 16)
/* 1A41AC 802758CC 34210FD0 */  ori       $at, $at, (0x40C90FD0 & 0xFFFF)
/* 1A41B0 802758D0 44810000 */  mtc1      $at, $f0
/* 1A41B4 802758D4 C6140044 */  lwc1      $f20, 0x44($s0)
/* 1A41B8 802758D8 46006302 */  mul.s     $f12, $f12, $f0
/* 1A41BC 802758DC 00000000 */  nop
/* 1A41C0 802758E0 C616003C */  lwc1      $f22, 0x3C($s0)
/* 1A41C4 802758E4 4600A521 */  cvt.d.s   $f20, $f20
/* 1A41C8 802758E8 3C0143B4 */  lui       $at, (0x43B40000 >> 16)
/* 1A41CC 802758EC 44810000 */  mtc1      $at, $f0
/* 1A41D0 802758F0 4600B5A1 */  cvt.d.s   $f22, $f22
/* 1A41D4 802758F4 0C00A85B */  jal       sin_rad
/* 1A41D8 802758F8 46006303 */   div.s    $f12, $f12, $f0
/* 1A41DC 802758FC 3C01802A */  lui       $at, %hi(D_8029D900)
/* 1A41E0 80275900 D422D900 */  ldc1      $f2, %lo(D_8029D900)($at)
/* 1A41E4 80275904 46000021 */  cvt.d.s   $f0, $f0
.L80275908:
/* 1A41E8 80275908 46220002 */  mul.d     $f0, $f0, $f2
/* 1A41EC 8027590C 00000000 */  nop
/* 1A41F0 80275910 46360002 */  mul.d     $f0, $f0, $f22
/* 1A41F4 80275914 00000000 */  nop
/* 1A41F8 80275918 46360000 */  add.d     $f0, $f0, $f22
/* 1A41FC 8027591C 4620A500 */  add.d     $f20, $f20, $f0
/* 1A4200 80275920 4620A520 */  cvt.s.d   $f20, $f20
/* 1A4204 80275924 E6140044 */  swc1      $f20, 0x44($s0)
/* 1A4208 80275928 C6400148 */  lwc1      $f0, 0x148($s2)
/* 1A420C 8027592C C6020050 */  lwc1      $f2, 0x50($s0)
/* 1A4210 80275930 46020001 */  sub.s     $f0, $f0, $f2
/* 1A4214 80275934 2402000B */  addiu     $v0, $zero, 0xB
/* 1A4218 80275938 0809D676 */  j         .L802759D8
/* 1A421C 8027593C E6000004 */   swc1     $f0, 0x4($s0)
.L80275940:
/* 1A4220 80275940 A6020064 */  sh        $v0, 0x64($s0)
/* 1A4224 80275944 86020064 */  lh        $v0, 0x64($s0)
/* 1A4228 80275948 24030168 */  addiu     $v1, $zero, 0x168
/* 1A422C 8027594C 14400002 */  bnez      $v0, .L80275958
/* 1A4230 80275950 0062001A */   div      $zero, $v1, $v0
/* 1A4234 80275954 0007000D */  break     7
.L80275958:
/* 1A4238 80275958 2401FFFF */  addiu     $at, $zero, -0x1
/* 1A423C 8027595C 14410004 */  bne       $v0, $at, .L80275970
/* 1A4240 80275960 3C018000 */   lui      $at, (0x80000000 >> 16)
/* 1A4244 80275964 14610002 */  bne       $v1, $at, .L80275970
/* 1A4248 80275968 00000000 */   nop
/* 1A424C 8027596C 0006000D */  break     6
.L80275970:
/* 1A4250 80275970 00001812 */  mflo      $v1
/* 1A4254 80275974 C6000018 */  lwc1      $f0, 0x18($s0)
/* 1A4258 80275978 C602001C */  lwc1      $f2, 0x1C($s0)
/* 1A425C 8027597C 46020001 */  sub.s     $f0, $f0, $f2
/* 1A4260 80275980 3C0142B4 */  lui       $at, (0x42B40000 >> 16)
/* 1A4264 80275984 44811000 */  mtc1      $at, $f2
/* 1A4268 80275988 00000000 */  nop
/* 1A426C 8027598C E6020024 */  swc1      $f2, 0x24($s0)
/* 1A4270 80275990 3C01802A */  lui       $at, %hi(D_8029D908)
/* 1A4274 80275994 D422D908 */  ldc1      $f2, %lo(D_8029D908)($at)
/* 1A4278 80275998 46000005 */  abs.s     $f0, $f0
/* 1A427C 8027599C 46000021 */  cvt.d.s   $f0, $f0
/* 1A4280 802759A0 46220003 */  div.d     $f0, $f0, $f2
/* 1A4284 802759A4 46200020 */  cvt.s.d   $f0, $f0
/* 1A4288 802759A8 E6000050 */  swc1      $f0, 0x50($s0)
/* 1A428C 802759AC 44830000 */  mtc1      $v1, $f0
/* 1A4290 802759B0 00000000 */  nop
/* 1A4294 802759B4 46800020 */  cvt.s.w   $f0, $f0
/* 1A4298 802759B8 E6000028 */  swc1      $f0, 0x28($s0)
/* 1A429C 802759BC C6400144 */  lwc1      $f0, 0x144($s2)
/* 1A42A0 802759C0 E6000000 */  swc1      $f0, 0x0($s0)
/* 1A42A4 802759C4 C6400148 */  lwc1      $f0, 0x148($s2)
/* 1A42A8 802759C8 E6000004 */  swc1      $f0, 0x4($s0)
/* 1A42AC 802759CC C640014C */  lwc1      $f0, 0x14C($s2)
/* 1A42B0 802759D0 24020015 */  addiu     $v0, $zero, 0x15
/* 1A42B4 802759D4 E6000008 */  swc1      $f0, 0x8($s0)
.L802759D8:
/* 1A42B8 802759D8 AE620070 */  sw        $v0, 0x70($s3)
.L802759DC:
/* 1A42BC 802759DC 8E630070 */  lw        $v1, 0x70($s3)
/* 1A42C0 802759E0 24020002 */  addiu     $v0, $zero, 0x2
.L802759E4:
/* 1A42C4 802759E4 10620085 */  beq       $v1, $v0, .L80275BFC
/* 1A42C8 802759E8 28620003 */   slti     $v0, $v1, 0x3
/* 1A42CC 802759EC 10400005 */  beqz      $v0, .L80275A04
/* 1A42D0 802759F0 24020001 */   addiu    $v0, $zero, 0x1
/* 1A42D4 802759F4 1062000A */  beq       $v1, $v0, .L80275A20
/* 1A42D8 802759F8 0000102D */   daddu    $v0, $zero, $zero
/* 1A42DC 802759FC 0809D7B5 */  j         .L80275ED4
/* 1A42E0 80275A00 00000000 */   nop
.L80275A04:
/* 1A42E4 80275A04 2402000B */  addiu     $v0, $zero, 0xB
/* 1A42E8 80275A08 10620090 */  beq       $v1, $v0, .L80275C4C
/* 1A42EC 80275A0C 24020015 */   addiu    $v0, $zero, 0x15
/* 1A42F0 80275A10 106200F4 */  beq       $v1, $v0, .L80275DE4
/* 1A42F4 80275A14 0000102D */   daddu    $v0, $zero, $zero
/* 1A42F8 80275A18 0809D7B5 */  j         .L80275ED4
/* 1A42FC 80275A1C 00000000 */   nop
.L80275A20:
/* 1A4300 80275A20 86020066 */  lh        $v0, 0x66($s0)
/* 1A4304 80275A24 14400013 */  bnez      $v0, .L80275A74
/* 1A4308 80275A28 00000000 */   nop
/* 1A430C 80275A2C C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A4310 80275A30 3C0140C9 */  lui       $at, (0x40C90FD0 >> 16)
/* 1A4314 80275A34 34210FD0 */  ori       $at, $at, (0x40C90FD0 & 0xFFFF)
/* 1A4318 80275A38 44810000 */  mtc1      $at, $f0
/* 1A431C 80275A3C C6140044 */  lwc1      $f20, 0x44($s0)
/* 1A4320 80275A40 46006302 */  mul.s     $f12, $f12, $f0
/* 1A4324 80275A44 00000000 */  nop
/* 1A4328 80275A48 C616003C */  lwc1      $f22, 0x3C($s0)
/* 1A432C 80275A4C 4600A521 */  cvt.d.s   $f20, $f20
/* 1A4330 80275A50 3C0143B4 */  lui       $at, (0x43B40000 >> 16)
/* 1A4334 80275A54 44810000 */  mtc1      $at, $f0
/* 1A4338 80275A58 4600B5A1 */  cvt.d.s   $f22, $f22
/* 1A433C 80275A5C 0C00A85B */  jal       sin_rad
/* 1A4340 80275A60 46006303 */   div.s    $f12, $f12, $f0
/* 1A4344 80275A64 3C01802A */  lui       $at, %hi(D_8029D910)
/* 1A4348 80275A68 D422D910 */  ldc1      $f2, %lo(D_8029D910)($at)
/* 1A434C 80275A6C 0809D6AE */  j         .L80275AB8
/* 1A4350 80275A70 46000021 */   cvt.d.s  $f0, $f0
.L80275A74:
/* 1A4354 80275A74 C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A4358 80275A78 3C0140C9 */  lui       $at, (0x40C90FD0 >> 16)
/* 1A435C 80275A7C 34210FD0 */  ori       $at, $at, (0x40C90FD0 & 0xFFFF)
/* 1A4360 80275A80 44810000 */  mtc1      $at, $f0
/* 1A4364 80275A84 C6140044 */  lwc1      $f20, 0x44($s0)
/* 1A4368 80275A88 46006302 */  mul.s     $f12, $f12, $f0
/* 1A436C 80275A8C 00000000 */  nop
/* 1A4370 80275A90 C616003C */  lwc1      $f22, 0x3C($s0)
/* 1A4374 80275A94 4600A521 */  cvt.d.s   $f20, $f20
/* 1A4378 80275A98 3C0143B4 */  lui       $at, (0x43B40000 >> 16)
/* 1A437C 80275A9C 44810000 */  mtc1      $at, $f0
/* 1A4380 80275AA0 4600B5A1 */  cvt.d.s   $f22, $f22
/* 1A4384 80275AA4 0C00A85B */  jal       sin_rad
/* 1A4388 80275AA8 46006303 */   div.s    $f12, $f12, $f0
/* 1A438C 80275AAC 3C01802A */  lui       $at, %hi(D_8029D918)
/* 1A4390 80275AB0 D422D918 */  ldc1      $f2, %lo(D_8029D918)($at)
/* 1A4394 80275AB4 46000021 */  cvt.d.s   $f0, $f0
.L80275AB8:
/* 1A4398 80275AB8 46220002 */  mul.d     $f0, $f0, $f2
/* 1A439C 80275ABC 00000000 */  nop
/* 1A43A0 80275AC0 46360002 */  mul.d     $f0, $f0, $f22
/* 1A43A4 80275AC4 00000000 */  nop
/* 1A43A8 80275AC8 46360000 */  add.d     $f0, $f0, $f22
/* 1A43AC 80275ACC 4620A500 */  add.d     $f20, $f20, $f0
/* 1A43B0 80275AD0 4620A520 */  cvt.s.d   $f20, $f20
/* 1A43B4 80275AD4 E6140044 */  swc1      $f20, 0x44($s0)
/* 1A43B8 80275AD8 C6060000 */  lwc1      $f6, 0x0($s0)
/* 1A43BC 80275ADC C6000030 */  lwc1      $f0, 0x30($s0)
/* 1A43C0 80275AE0 C6040004 */  lwc1      $f4, 0x4($s0)
/* 1A43C4 80275AE4 46003180 */  add.s     $f6, $f6, $f0
/* 1A43C8 80275AE8 C6000034 */  lwc1      $f0, 0x34($s0)
/* 1A43CC 80275AEC C6020008 */  lwc1      $f2, 0x8($s0)
/* 1A43D0 80275AF0 46002100 */  add.s     $f4, $f4, $f0
/* 1A43D4 80275AF4 C6000038 */  lwc1      $f0, 0x38($s0)
/* 1A43D8 80275AF8 46001080 */  add.s     $f2, $f2, $f0
/* 1A43DC 80275AFC E6060000 */  swc1      $f6, 0x0($s0)
/* 1A43E0 80275B00 E6040004 */  swc1      $f4, 0x4($s0)
/* 1A43E4 80275B04 E6020008 */  swc1      $f2, 0x8($s0)
/* 1A43E8 80275B08 C6400148 */  lwc1      $f0, 0x148($s2)
/* 1A43EC 80275B0C 46003086 */  mov.s     $f2, $f6
/* 1A43F0 80275B10 E6000018 */  swc1      $f0, 0x18($s0)
/* 1A43F4 80275B14 E6420144 */  swc1      $f2, 0x144($s2)
/* 1A43F8 80275B18 C60C0044 */  lwc1      $f12, 0x44($s0)
/* 1A43FC 80275B1C 3C013FC9 */  lui       $at, (0x3FC90FD0 >> 16)
/* 1A4400 80275B20 34210FD0 */  ori       $at, $at, (0x3FC90FD0 & 0xFFFF)
/* 1A4404 80275B24 4481A000 */  mtc1      $at, $f20
/* 1A4408 80275B28 0C00A85B */  jal       sin_rad
/* 1A440C 80275B2C 00000000 */   nop
/* 1A4410 80275B30 46140302 */  mul.s     $f12, $f0, $f20
/* 1A4414 80275B34 0C00A85B */  jal       sin_rad
/* 1A4418 80275B38 00000000 */   nop
/* 1A441C 80275B3C 46140302 */  mul.s     $f12, $f0, $f20
/* 1A4420 80275B40 0C00A85B */  jal       sin_rad
/* 1A4424 80275B44 00000000 */   nop
/* 1A4428 80275B48 C6020050 */  lwc1      $f2, 0x50($s0)
/* 1A442C 80275B4C 46001082 */  mul.s     $f2, $f2, $f0
/* 1A4430 80275B50 00000000 */  nop
/* 1A4434 80275B54 C6000004 */  lwc1      $f0, 0x4($s0)
/* 1A4438 80275B58 46020000 */  add.s     $f0, $f0, $f2
/* 1A443C 80275B5C E6400148 */  swc1      $f0, 0x148($s2)
/* 1A4440 80275B60 C6000008 */  lwc1      $f0, 0x8($s0)
/* 1A4444 80275B64 E640014C */  swc1      $f0, 0x14C($s2)
/* 1A4448 80275B68 C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A444C 80275B6C C6000028 */  lwc1      $f0, 0x28($s0)
/* 1A4450 80275B70 46006300 */  add.s     $f12, $f12, $f0
/* 1A4454 80275B74 C6400148 */  lwc1      $f0, 0x148($s2)
/* 1A4458 80275B78 E600001C */  swc1      $f0, 0x1C($s0)
/* 1A445C 80275B7C 0C00A6C9 */  jal       clamp_angle
/* 1A4460 80275B80 E60C0024 */   swc1     $f12, 0x24($s0)
/* 1A4464 80275B84 96020064 */  lhu       $v0, 0x64($s0)
/* 1A4468 80275B88 E6000024 */  swc1      $f0, 0x24($s0)
/* 1A446C 80275B8C 2442FFFF */  addiu     $v0, $v0, -0x1
/* 1A4470 80275B90 A6020064 */  sh        $v0, 0x64($s0)
/* 1A4474 80275B94 00021400 */  sll       $v0, $v0, 16
/* 1A4478 80275B98 144000CE */  bnez      $v0, .L80275ED4
/* 1A447C 80275B9C 0000102D */   daddu    $v0, $zero, $zero
/* 1A4480 80275BA0 C640014C */  lwc1      $f0, 0x14C($s2)
/* 1A4484 80275BA4 24040160 */  addiu     $a0, $zero, 0x160
/* 1A4488 80275BA8 E7A00010 */  swc1      $f0, 0x10($sp)
/* 1A448C 80275BAC 8E460144 */  lw        $a2, 0x144($s2)
/* 1A4490 80275BB0 8E470148 */  lw        $a3, 0x148($s2)
/* 1A4494 80275BB4 0C052757 */  jal       sfx_play_sound_at_position
/* 1A4498 80275BB8 0000282D */   daddu    $a1, $zero, $zero
/* 1A449C 80275BBC 0000202D */  daddu     $a0, $zero, $zero
/* 1A44A0 80275BC0 8E06005C */  lw        $a2, 0x5C($s0)
/* 1A44A4 80275BC4 0C098F3F */  jal       set_animation
/* 1A44A8 80275BC8 0080282D */   daddu    $a1, $a0, $zero
/* 1A44AC 80275BCC C6420164 */  lwc1      $f2, 0x164($s2)
/* 1A44B0 80275BD0 3C014284 */  lui       $at, (0x42840000 >> 16)
/* 1A44B4 80275BD4 44810000 */  mtc1      $at, $f0
/* 1A44B8 80275BD8 2402000E */  addiu     $v0, $zero, 0xE
/* 1A44BC 80275BDC 46001081 */  sub.s     $f2, $f2, $f0
/* 1A44C0 80275BE0 A642016A */  sh        $v0, 0x16A($s2)
/* 1A44C4 80275BE4 24020007 */  addiu     $v0, $zero, 0x7
/* 1A44C8 80275BE8 E6420164 */  swc1      $f2, 0x164($s2)
/* 1A44CC 80275BEC A6020064 */  sh        $v0, 0x64($s0)
/* 1A44D0 80275BF0 24020002 */  addiu     $v0, $zero, 0x2
/* 1A44D4 80275BF4 0809D7B4 */  j         .L80275ED0
/* 1A44D8 80275BF8 AE620070 */   sw       $v0, 0x70($s3)
.L80275BFC:
/* 1A44DC 80275BFC C6420164 */  lwc1      $f2, 0x164($s2)
/* 1A44E0 80275C00 3C014284 */  lui       $at, (0x42840000 >> 16)
/* 1A44E4 80275C04 44810000 */  mtc1      $at, $f0
/* 1A44E8 80275C08 00000000 */  nop
/* 1A44EC 80275C0C 46001081 */  sub.s     $f2, $f2, $f0
/* 1A44F0 80275C10 2402000E */  addiu     $v0, $zero, 0xE
/* 1A44F4 80275C14 A642016A */  sh        $v0, 0x16A($s2)
/* 1A44F8 80275C18 E6420164 */  swc1      $f2, 0x164($s2)
/* 1A44FC 80275C1C 96020064 */  lhu       $v0, 0x64($s0)
/* 1A4500 80275C20 2442FFFF */  addiu     $v0, $v0, -0x1
/* 1A4504 80275C24 A6020064 */  sh        $v0, 0x64($s0)
/* 1A4508 80275C28 00021400 */  sll       $v0, $v0, 16
/* 1A450C 80275C2C 144000A9 */  bnez      $v0, .L80275ED4
/* 1A4510 80275C30 0000102D */   daddu    $v0, $zero, $zero
/* 1A4514 80275C34 0000202D */  daddu     $a0, $zero, $zero
/* 1A4518 80275C38 AE400164 */  sw        $zero, 0x164($s2)
/* 1A451C 80275C3C A640016A */  sh        $zero, 0x16A($s2)
/* 1A4520 80275C40 8E060060 */  lw        $a2, 0x60($s0)
/* 1A4524 80275C44 0809D775 */  j         .L80275DD4
/* 1A4528 80275C48 0080282D */   daddu    $a1, $a0, $zero
.L80275C4C:
/* 1A452C 80275C4C C6060000 */  lwc1      $f6, 0x0($s0)
/* 1A4530 80275C50 C6000030 */  lwc1      $f0, 0x30($s0)
/* 1A4534 80275C54 C6040004 */  lwc1      $f4, 0x4($s0)
/* 1A4538 80275C58 46003180 */  add.s     $f6, $f6, $f0
/* 1A453C 80275C5C C6000034 */  lwc1      $f0, 0x34($s0)
/* 1A4540 80275C60 C6020008 */  lwc1      $f2, 0x8($s0)
/* 1A4544 80275C64 46002100 */  add.s     $f4, $f4, $f0
/* 1A4548 80275C68 C6000038 */  lwc1      $f0, 0x38($s0)
/* 1A454C 80275C6C 46001080 */  add.s     $f2, $f2, $f0
/* 1A4550 80275C70 E6060000 */  swc1      $f6, 0x0($s0)
/* 1A4554 80275C74 E6040004 */  swc1      $f4, 0x4($s0)
/* 1A4558 80275C78 E6020008 */  swc1      $f2, 0x8($s0)
/* 1A455C 80275C7C C6400148 */  lwc1      $f0, 0x148($s2)
/* 1A4560 80275C80 46003086 */  mov.s     $f2, $f6
/* 1A4564 80275C84 E6000018 */  swc1      $f0, 0x18($s0)
/* 1A4568 80275C88 E6420144 */  swc1      $f2, 0x144($s2)
/* 1A456C 80275C8C 0C00A85B */  jal       sin_rad
/* 1A4570 80275C90 C60C0044 */   lwc1     $f12, 0x44($s0)
/* 1A4574 80275C94 C6020050 */  lwc1      $f2, 0x50($s0)
/* 1A4578 80275C98 46001082 */  mul.s     $f2, $f2, $f0
/* 1A457C 80275C9C 00000000 */  nop
/* 1A4580 80275CA0 C6000004 */  lwc1      $f0, 0x4($s0)
/* 1A4584 80275CA4 46020000 */  add.s     $f0, $f0, $f2
/* 1A4588 80275CA8 E6400148 */  swc1      $f0, 0x148($s2)
/* 1A458C 80275CAC C6000008 */  lwc1      $f0, 0x8($s0)
/* 1A4590 80275CB0 E640014C */  swc1      $f0, 0x14C($s2)
/* 1A4594 80275CB4 C6020010 */  lwc1      $f2, 0x10($s0)
/* 1A4598 80275CB8 C6400148 */  lwc1      $f0, 0x148($s2)
/* 1A459C 80275CBC 4602003C */  c.lt.s    $f0, $f2
/* 1A45A0 80275CC0 00000000 */  nop
/* 1A45A4 80275CC4 45030001 */  bc1tl     .L80275CCC
/* 1A45A8 80275CC8 E6420148 */   swc1     $f2, 0x148($s2)
.L80275CCC:
/* 1A45AC 80275CCC C6400148 */  lwc1      $f0, 0x148($s2)
/* 1A45B0 80275CD0 86030066 */  lh        $v1, 0x66($s0)
/* 1A45B4 80275CD4 24020001 */  addiu     $v0, $zero, 0x1
/* 1A45B8 80275CD8 14620013 */  bne       $v1, $v0, .L80275D28
/* 1A45BC 80275CDC E600001C */   swc1     $f0, 0x1C($s0)
/* 1A45C0 80275CE0 C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A45C4 80275CE4 3C0140C9 */  lui       $at, (0x40C90FD0 >> 16)
/* 1A45C8 80275CE8 34210FD0 */  ori       $at, $at, (0x40C90FD0 & 0xFFFF)
/* 1A45CC 80275CEC 44810000 */  mtc1      $at, $f0
/* 1A45D0 80275CF0 C6140044 */  lwc1      $f20, 0x44($s0)
/* 1A45D4 80275CF4 46006302 */  mul.s     $f12, $f12, $f0
/* 1A45D8 80275CF8 00000000 */  nop
/* 1A45DC 80275CFC C616003C */  lwc1      $f22, 0x3C($s0)
/* 1A45E0 80275D00 4600A521 */  cvt.d.s   $f20, $f20
/* 1A45E4 80275D04 3C0143B4 */  lui       $at, (0x43B40000 >> 16)
/* 1A45E8 80275D08 44810000 */  mtc1      $at, $f0
/* 1A45EC 80275D0C 4600B5A1 */  cvt.d.s   $f22, $f22
/* 1A45F0 80275D10 0C00A85B */  jal       sin_rad
/* 1A45F4 80275D14 46006303 */   div.s    $f12, $f12, $f0
/* 1A45F8 80275D18 3C01802A */  lui       $at, %hi(D_8029D920)
/* 1A45FC 80275D1C D422D920 */  ldc1      $f2, %lo(D_8029D920)($at)
/* 1A4600 80275D20 0809D75B */  j         .L80275D6C
/* 1A4604 80275D24 46000021 */   cvt.d.s  $f0, $f0
.L80275D28:
/* 1A4608 80275D28 C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A460C 80275D2C 3C0140C9 */  lui       $at, (0x40C90FD0 >> 16)
/* 1A4610 80275D30 34210FD0 */  ori       $at, $at, (0x40C90FD0 & 0xFFFF)
/* 1A4614 80275D34 44810000 */  mtc1      $at, $f0
/* 1A4618 80275D38 C6140044 */  lwc1      $f20, 0x44($s0)
/* 1A461C 80275D3C 46006302 */  mul.s     $f12, $f12, $f0
/* 1A4620 80275D40 00000000 */  nop
/* 1A4624 80275D44 C616003C */  lwc1      $f22, 0x3C($s0)
/* 1A4628 80275D48 4600A521 */  cvt.d.s   $f20, $f20
/* 1A462C 80275D4C 3C0143B4 */  lui       $at, (0x43B40000 >> 16)
/* 1A4630 80275D50 44810000 */  mtc1      $at, $f0
/* 1A4634 80275D54 4600B5A1 */  cvt.d.s   $f22, $f22
/* 1A4638 80275D58 0C00A85B */  jal       sin_rad
/* 1A463C 80275D5C 46006303 */   div.s    $f12, $f12, $f0
/* 1A4640 80275D60 3C01802A */  lui       $at, %hi(D_8029D928)
/* 1A4644 80275D64 D422D928 */  ldc1      $f2, %lo(D_8029D928)($at)
/* 1A4648 80275D68 46000021 */  cvt.d.s   $f0, $f0
.L80275D6C:
/* 1A464C 80275D6C 46220002 */  mul.d     $f0, $f0, $f2
/* 1A4650 80275D70 00000000 */  nop
/* 1A4654 80275D74 46360002 */  mul.d     $f0, $f0, $f22
/* 1A4658 80275D78 00000000 */  nop
/* 1A465C 80275D7C 46360000 */  add.d     $f0, $f0, $f22
/* 1A4660 80275D80 4620A500 */  add.d     $f20, $f20, $f0
/* 1A4664 80275D84 4620A520 */  cvt.s.d   $f20, $f20
/* 1A4668 80275D88 E6140044 */  swc1      $f20, 0x44($s0)
/* 1A466C 80275D8C C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A4670 80275D90 C6000028 */  lwc1      $f0, 0x28($s0)
/* 1A4674 80275D94 46006300 */  add.s     $f12, $f12, $f0
/* 1A4678 80275D98 0C00A6C9 */  jal       clamp_angle
/* 1A467C 80275D9C E60C0024 */   swc1     $f12, 0x24($s0)
/* 1A4680 80275DA0 96020064 */  lhu       $v0, 0x64($s0)
/* 1A4684 80275DA4 E6000024 */  swc1      $f0, 0x24($s0)
/* 1A4688 80275DA8 2442FFFF */  addiu     $v0, $v0, -0x1
/* 1A468C 80275DAC A6020064 */  sh        $v0, 0x64($s0)
/* 1A4690 80275DB0 00021400 */  sll       $v0, $v0, 16
/* 1A4694 80275DB4 14400047 */  bnez      $v0, .L80275ED4
/* 1A4698 80275DB8 0000102D */   daddu    $v0, $zero, $zero
/* 1A469C 80275DBC 0000202D */  daddu     $a0, $zero, $zero
/* 1A46A0 80275DC0 0080282D */  daddu     $a1, $a0, $zero
/* 1A46A4 80275DC4 3C060001 */  lui       $a2, (0x1000C >> 16)
/* 1A46A8 80275DC8 C6000010 */  lwc1      $f0, 0x10($s0)
/* 1A46AC 80275DCC 34C6000C */  ori       $a2, $a2, (0x1000C & 0xFFFF)
/* 1A46B0 80275DD0 E6400148 */  swc1      $f0, 0x148($s2)
.L80275DD4:
/* 1A46B4 80275DD4 0C098F3F */  jal       set_animation
/* 1A46B8 80275DD8 00000000 */   nop
/* 1A46BC 80275DDC 0809D7B5 */  j         .L80275ED4
/* 1A46C0 80275DE0 24020001 */   addiu    $v0, $zero, 0x1
.L80275DE4:
/* 1A46C4 80275DE4 C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A46C8 80275DE8 3C0140C9 */  lui       $at, (0x40C90FD0 >> 16)
/* 1A46CC 80275DEC 34210FD0 */  ori       $at, $at, (0x40C90FD0 & 0xFFFF)
/* 1A46D0 80275DF0 4481B000 */  mtc1      $at, $f22
/* 1A46D4 80275DF4 00000000 */  nop
/* 1A46D8 80275DF8 46166302 */  mul.s     $f12, $f12, $f22
/* 1A46DC 80275DFC 00000000 */  nop
/* 1A46E0 80275E00 C6140000 */  lwc1      $f20, 0x0($s0)
/* 1A46E4 80275E04 3C0143B4 */  lui       $at, (0x43B40000 >> 16)
/* 1A46E8 80275E08 4481C000 */  mtc1      $at, $f24
/* 1A46EC 80275E0C 4600A521 */  cvt.d.s   $f20, $f20
/* 1A46F0 80275E10 0C00A85B */  jal       sin_rad
/* 1A46F4 80275E14 46186303 */   div.s    $f12, $f12, $f24
/* 1A46F8 80275E18 C6020050 */  lwc1      $f2, 0x50($s0)
/* 1A46FC 80275E1C 46001082 */  mul.s     $f2, $f2, $f0
/* 1A4700 80275E20 00000000 */  nop
/* 1A4704 80275E24 C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A4708 80275E28 46166302 */  mul.s     $f12, $f12, $f22
/* 1A470C 80275E2C 00000000 */  nop
/* 1A4710 80275E30 3C01802A */  lui       $at, %hi(D_8029D930)
/* 1A4714 80275E34 D420D930 */  ldc1      $f0, %lo(D_8029D930)($at)
/* 1A4718 80275E38 460010A1 */  cvt.d.s   $f2, $f2
/* 1A471C 80275E3C 46201083 */  div.d     $f2, $f2, $f0
/* 1A4720 80275E40 4622A500 */  add.d     $f20, $f20, $f2
/* 1A4724 80275E44 46186303 */  div.s     $f12, $f12, $f24
/* 1A4728 80275E48 4620A520 */  cvt.s.d   $f20, $f20
/* 1A472C 80275E4C 0C00A85B */  jal       sin_rad
/* 1A4730 80275E50 E6140000 */   swc1     $f20, 0x0($s0)
/* 1A4734 80275E54 C6020050 */  lwc1      $f2, 0x50($s0)
/* 1A4738 80275E58 46001082 */  mul.s     $f2, $f2, $f0
/* 1A473C 80275E5C 00000000 */  nop
/* 1A4740 80275E60 C60C0024 */  lwc1      $f12, 0x24($s0)
/* 1A4744 80275E64 C6000028 */  lwc1      $f0, 0x28($s0)
/* 1A4748 80275E68 46006300 */  add.s     $f12, $f12, $f0
/* 1A474C 80275E6C C6000004 */  lwc1      $f0, 0x4($s0)
/* 1A4750 80275E70 46020001 */  sub.s     $f0, $f0, $f2
/* 1A4754 80275E74 E60C0024 */  swc1      $f12, 0x24($s0)
/* 1A4758 80275E78 0C00A6C9 */  jal       clamp_angle
/* 1A475C 80275E7C E6000004 */   swc1     $f0, 0x4($s0)
/* 1A4760 80275E80 C6020000 */  lwc1      $f2, 0x0($s0)
/* 1A4764 80275E84 E6000024 */  swc1      $f0, 0x24($s0)
/* 1A4768 80275E88 E6420144 */  swc1      $f2, 0x144($s2)
/* 1A476C 80275E8C C6000004 */  lwc1      $f0, 0x4($s0)
/* 1A4770 80275E90 E6400148 */  swc1      $f0, 0x148($s2)
/* 1A4774 80275E94 C6000008 */  lwc1      $f0, 0x8($s0)
/* 1A4778 80275E98 E640014C */  swc1      $f0, 0x14C($s2)
/* 1A477C 80275E9C 3C02800E */  lui       $v0, %hi(gBattleStatus)
/* 1A4780 80275EA0 8C42C070 */  lw        $v0, %lo(gBattleStatus)($v0)
/* 1A4784 80275EA4 30422000 */  andi      $v0, $v0, 0x2000
/* 1A4788 80275EA8 10400003 */  beqz      $v0, .L80275EB8
/* 1A478C 80275EAC 00000000 */   nop
.L80275EB0:
/* 1A4790 80275EB0 0809D7B5 */  j         .L80275ED4
/* 1A4794 80275EB4 24020002 */   addiu    $v0, $zero, 0x2
.L80275EB8:
/* 1A4798 80275EB8 96030064 */  lhu       $v1, 0x64($s0)
/* 1A479C 80275EBC 2463FFFF */  addiu     $v1, $v1, -0x1
/* 1A47A0 80275EC0 A6030064 */  sh        $v1, 0x64($s0)
/* 1A47A4 80275EC4 00031C00 */  sll       $v1, $v1, 16
/* 1A47A8 80275EC8 10600002 */  beqz      $v1, .L80275ED4
/* 1A47AC 80275ECC 24020001 */   addiu    $v0, $zero, 0x1
.L80275ED0:
/* 1A47B0 80275ED0 0000102D */  daddu     $v0, $zero, $zero
.L80275ED4:
/* 1A47B4 80275ED4 8FBF0028 */  lw        $ra, 0x28($sp)
/* 1A47B8 80275ED8 8FB30024 */  lw        $s3, 0x24($sp)
/* 1A47BC 80275EDC 8FB20020 */  lw        $s2, 0x20($sp)
/* 1A47C0 80275EE0 8FB1001C */  lw        $s1, 0x1C($sp)
/* 1A47C4 80275EE4 8FB00018 */  lw        $s0, 0x18($sp)
/* 1A47C8 80275EE8 D7BA0048 */  ldc1      $f26, 0x48($sp)
/* 1A47CC 80275EEC D7B80040 */  ldc1      $f24, 0x40($sp)
/* 1A47D0 80275EF0 D7B60038 */  ldc1      $f22, 0x38($sp)
/* 1A47D4 80275EF4 D7B40030 */  ldc1      $f20, 0x30($sp)
/* 1A47D8 80275EF8 03E00008 */  jr        $ra
/* 1A47DC 80275EFC 27BD0050 */   addiu    $sp, $sp, 0x50

### DECOMPILED C INSTRUCTIONS:

ApiStatus func_802752AC(Evt* script, s32 isInitialCall) {
    Bytecode* args = script->ptrReadPos;
    Actor* player = gBattleStatus.playerActor;
    ActorState* playerState = &player->state;
    f32 posX, posY, posZ;
    f32 goalX, goalZ;
    f32 temp;
    f64 temp_f20;
    f64 vel1, vel2;
    f64 vel3, vel4;
    f64 vel5, vel6;
    f64 vel7, vel8;
    f64 acc1, acc2;
    f64 acc3, acc4;
    f64 acc5, acc6;
    f64 acc7, acc8;

    if (isInitialCall) {
        player->state.moveTime = evt_get_variable(script, *args++);
        player->state.moveArcAmplitude = evt_get_variable(script, *args++);
        script->functionTemp[0] = 0;
        if (player->state.moveArcAmplitude == 1 ||
            player->state.moveArcAmplitude == 5 ||
            player->state.moveArcAmplitude == 6)
        {
            script->functionTemp[0] = 10;
        }
        if (playerState->moveArcAmplitude == 2) {
            script->functionTemp[0] = 20;
        }
    }

    switch (script->functionTemp[0]) {
        case 0:
            playerState->currentPos.x = player->currentPos.x;
            playerState->currentPos.y = player->currentPos.y;
            playerState->currentPos.z = player->currentPos.z;
            goalX = playerState->goalPos.x;
            goalZ = playerState->goalPos.z;
            posX = playerState->currentPos.x;
            posY = playerState->currentPos.y;
            posZ = playerState->currentPos.z;
            playerState->angle = atan2(posX, posZ, goalX, goalZ);
            playerState->distance = dist2D(posX, posZ, goalX, goalZ);

            if (playerState->moveTime == 0) {
                playerState->moveTime = playerState->distance / playerState->speed;
                temp = playerState->distance - (playerState->moveTime * playerState->speed);
            } else {
                playerState->speed = playerState->distance / playerState->moveTime;
                temp = playerState->distance - (playerState->moveTime * playerState->speed);
            }

            if (playerState->moveTime == 0) {
                return ApiStatus_DONE2;
            }

            playerState->unk_30.x = (playerState->goalPos.x - playerState->currentPos.x) / playerState->moveTime;
            playerState->unk_30.y = (playerState->goalPos.y - playerState->currentPos.y) / playerState->moveTime;
            playerState->unk_30.z = (playerState->goalPos.z - playerState->currentPos.z) / playerState->moveTime;
            playerState->acceleration = (PI_S / 2) / playerState->moveTime;
            playerState->velocity = 0.0f;
            playerState->speed += temp / playerState->moveTime;
            set_animation(ACTOR_PLAYER, 0, playerState->animJumpRise);
            sfx_play_sound_at_position(SOUND_160, SOUND_SPACE_MODE_0, player->currentPos.x, player->currentPos.y, player->currentPos.z);
            playerState->unk_24 = 90.0f;
            playerState->bounceDivisor = 45.0f;
            playerState->unk_28 = 360 / playerState->moveTime;
            if (playerState->moveArcAmplitude == 4) {
                playerState->bounceDivisor = 56.25f;
            }
            playerState->unk_18.x = 0.0f;
            playerState->unk_18.y = 0.0f;
            if (playerState->moveArcAmplitude == 0) {
                vel1 = playerState->velocity;
                acc1 = playerState->acceleration;
                playerState->velocity = (vel1 + ((sin_rad(DEG_TO_RAD(playerState->unk_24)) * 0.53 * acc1) + acc1));
            } else {
                vel2 = playerState->velocity;
                acc2 = playerState->acceleration;
                playerState->velocity = (vel2 + ((sin_rad(DEG_TO_RAD(playerState->unk_24)) * 0.01 * acc2) + acc2));
            }
            script->functionTemp[0] = 1;
            break;
        case 10:
            playerState->currentPos.x = player->currentPos.x;
            playerState->currentPos.y = player->currentPos.y;
            playerState->currentPos.z = player->currentPos.z;
            goalX = playerState->goalPos.x;
            goalZ = playerState->goalPos.z;
            posX = playerState->currentPos.x;
            posY = playerState->currentPos.y;
            posZ = playerState->currentPos.z;
            playerState->angle = atan2(posX, posZ, goalX, goalZ);
            playerState->distance = dist2D(posX, posZ, goalX, goalZ);
            if (playerState->moveTime == 0) {
                playerState->moveTime = playerState->distance / playerState->speed;
                temp = playerState->distance - (playerState->moveTime * playerState->speed);
            } else {
                playerState->speed = playerState->distance / playerState->moveTime;
                temp = playerState->distance - (playerState->moveTime * playerState->speed);
            }

            if (playerState->moveTime == 0) {
                return ApiStatus_DONE2;
            }
            playerState->unk_30.x = (playerState->goalPos.x - playerState->currentPos.x) / playerState->moveTime;
            playerState->unk_30.y = (playerState->goalPos.y - playerState->currentPos.y) / playerState->moveTime;
            playerState->unk_30.z = (playerState->goalPos.z - playerState->currentPos.z) / playerState->moveTime;
            playerState->velocity = (PI_S / 2);
            playerState->acceleration = (PI_S / 4) / (playerState->moveTime + 1);
            playerState->speed += temp / playerState->moveTime;
            set_animation(ACTOR_PLAYER, 0, playerState->animJumpLand);
            playerState->unk_24 = 90.0f;
            playerState->bounceDivisor = 45.0f;
            playerState->unk_28 = (360 / playerState->moveTime);
            if (playerState->moveArcAmplitude == 5) {
                playerState->bounceDivisor = 56.25f;
            }
            playerState->unk_18.x = 0.0f;
            playerState->unk_18.y = 0.0f;
            if (playerState->moveArcAmplitude == 1) {
                vel3 = playerState->velocity;
                acc3 = playerState->acceleration;
                playerState->velocity = (vel3 + ((sin_rad(DEG_TO_RAD(playerState->unk_24)) * 0.53 * acc3) + acc3));
            } else {
                vel4 = playerState->velocity;
                acc4 = playerState->acceleration;
                playerState->velocity = (vel4 + ((sin_rad(DEG_TO_RAD(playerState->unk_24)) * 0.01 * acc4) + acc4));
            }
            playerState->currentPos.y = player->currentPos.y - playerState->bounceDivisor;
            script->functionTemp[0] = 11;
            break;
        case 20:
            playerState->moveTime = 1;
            playerState->unk_24 = 90.0f;
            playerState->bounceDivisor = (fabsf(playerState->unk_18.x - playerState->unk_18.y) / 16.5);
            playerState->unk_28 = (360 / playerState->moveTime);
            playerState->currentPos.x = player->currentPos.x;
            playerState->currentPos.y = player->currentPos.y;
            playerState->currentPos.z = player->currentPos.z;
            script->functionTemp[0] = 21;
            break;
    }

    switch (script->functionTemp[0]) {
        case 1:
            if (playerState->moveArcAmplitude == 0) {
                vel5 = playerState->velocity;
                acc5 = playerState->acceleration;
                playerState->velocity = (vel5 + ((sin_rad(DEG_TO_RAD(playerState->unk_24)) * 0.53 * acc5) + acc5));
            } else {
                vel6 = playerState->velocity;
                acc6 = playerState->acceleration;
                playerState->velocity = (vel6 + ((sin_rad(DEG_TO_RAD(playerState->unk_24)) * 0.01 * acc6) + acc6));
            }
            playerState->currentPos.x += playerState->unk_30.x;
            playerState->currentPos.y += playerState->unk_30.y;
            playerState->currentPos.z += playerState->unk_30.z;
            playerState->unk_18.x = player->currentPos.y;
            player->currentPos.x = playerState->currentPos.x;
            player->currentPos.y = playerState->currentPos.y + (playerState->bounceDivisor * sin_rad(sin_rad(sin_rad(playerState->velocity) * (PI_S / 2)) * (PI_S / 2)));
            player->currentPos.z = playerState->currentPos.z;
            playerState->unk_18.y = player->currentPos.y;
            playerState->unk_24 += playerState->unk_28;
            playerState->unk_24 = clamp_angle(playerState->unk_24);
            playerState->moveTime--;
            if (playerState->moveTime == 0) {
                sfx_play_sound_at_position(SOUND_160, SOUND_SPACE_MODE_0, player->currentPos.x, player->currentPos.y, player->currentPos.z);
                set_animation(ACTOR_PLAYER, 0, playerState->animJumpFall);
                player->rotationPivotOffset.y = 14;
                player->rotation.z -= 66.0f;
                playerState->moveTime = 7;
                script->functionTemp[0] = 2;
            }
            break;
        case 2:
            player->rotationPivotOffset.y = 14;
            player->rotation.z -= 66.0f;
            playerState->moveTime--;
            if (playerState->moveTime == 0) {
                player->rotation.z = 0.0f;
                player->rotationPivotOffset.y = 0;
                set_animation(ACTOR_PLAYER, 0, playerState->animJumpLand);
                return ApiStatus_DONE1;
            }
            break;
        case 11:
            playerState->currentPos.x += playerState->unk_30.x;
            playerState->currentPos.y += playerState->unk_30.y;
            playerState->currentPos.z += playerState->unk_30.z;
            playerState->unk_18.x = player->currentPos.y;
            player->currentPos.x = playerState->currentPos.x;
            player->currentPos.y = playerState->currentPos.y + (playerState->bounceDivisor * sin_rad(playerState->velocity));
            player->currentPos.z = playerState->currentPos.z;
            if (playerState->goalPos.y > player->currentPos.y) {
                player->currentPos.y = playerState->goalPos.y;
            }
            playerState->unk_18.y = player->currentPos.y;

            if (playerState->moveArcAmplitude == 1) {
                vel7 = playerState->velocity;
                acc7 = playerState->acceleration;
                playerState->velocity = (vel7 + ((sin_rad(DEG_TO_RAD(playerState->unk_24)) * 0.53 * acc7) + acc7));
            } else {
                vel8 = playerState->velocity;
                acc8 = playerState->acceleration;
                playerState->velocity = (vel8 + ((sin_rad(DEG_TO_RAD(playerState->unk_24)) * 0.01 * acc8) + acc8));
            }

            playerState->unk_24 += playerState->unk_28;
            playerState->unk_24 = clamp_angle(playerState->unk_24);
            playerState->moveTime--;
            if (playerState->moveTime == 0) {
                player->currentPos.y = playerState->goalPos.y;
                set_animation(ACTOR_PLAYER, 0, 0x1000C);
                return ApiStatus_DONE1;
            }
            break;
        case 21:
            temp_f20 = playerState->currentPos.x;
            temp_f20 += (playerState->bounceDivisor * sin_rad(DEG_TO_RAD(playerState->unk_24))) / 33.0;
            playerState->currentPos.x = temp_f20;
            playerState->currentPos.y -= playerState->bounceDivisor * sin_rad(DEG_TO_RAD(playerState->unk_24));
            playerState->unk_24 += playerState->unk_28;
            playerState->unk_24 = clamp_angle(playerState->unk_24);
            player->currentPos.x = playerState->currentPos.x;
            player->currentPos.y = playerState->currentPos.y;
            player->currentPos.z = playerState->currentPos.z;
            if (gBattleStatus.flags1 & BS_FLAGS1_2000) {
                return ApiStatus_DONE2;
            }
            playerState->moveTime--;
            if (playerState->moveTime == 0) {
                return ApiStatus_DONE1;
            }
            break;
    }

    return ApiStatus_BLOCK;
}