oot/asm/non_matchings/code/z_en_item00/EnItem00_Update.s

530 lines
23 KiB
ArmAsm

.late_rodata
glabel D_80134FF4
.float 0.1
glabel D_80134FF8
.float -10000
glabel jtbl_80134FFC
.word L8001EA90
.word L8001EAA4
.word L8001EAB8
.word L8001EB0C
.word L8001EB34
.word L8001EB48
.word L8001EBB0
.word L8001EBBC
.word L8001EB5C
.word L8001EB70
.word L8001EB84
.word L8001EB34
.word L8001EB00
.word L8001EAF4
.word L8001EBC8
.word L8001EBD4
.word L8001EB98
.word L8001EBA4
.word L8001EB20
.word L8001EAE0
.word L8001EACC
.word L8001EBE0
.word L8001EBEC
.word L8001EBF8
.word L8001EC04
.word L8001EC0C
glabel jtbl_80135064
.word L8001EC60
.word L8001EC60
.word L8001EC8C
.word L8001EC8C
.word L8001EC8C
.word L8001EC8C
.word L8001EC8C
.word L8001EC8C
.word L8001EC8C
.word L8001EC8C
.word L8001EC8C
.word L8001EC60
.word L8001EC8C
.word L8001EC8C
.word L8001EC8C
.word L8001EC60
.word L8001EC60
.word L8001EC60
.word L8001EC60
.text
glabel EnItem00_Update
/* A958BC 8001E71C 27BDFFB8 */ addiu $sp, $sp, -0x48
/* A958C0 8001E720 AFBF0024 */ sw $ra, 0x24($sp)
/* A958C4 8001E724 AFB10020 */ sw $s1, 0x20($sp)
/* A958C8 8001E728 AFB0001C */ sw $s0, 0x1c($sp)
/* A958CC 8001E72C AFA0003C */ sw $zero, 0x3c($sp)
/* A958D0 8001E730 A7A0003A */ sh $zero, 0x3a($sp)
/* A958D4 8001E734 8482015A */ lh $v0, 0x15a($a0)
/* A958D8 8001E738 00808025 */ move $s0, $a0
/* A958DC 8001E73C 00A08825 */ move $s1, $a1
/* A958E0 8001E740 18400003 */ blez $v0, .L8001E750
/* A958E4 8001E744 244EFFFF */ addiu $t6, $v0, -1
/* A958E8 8001E748 A48E015A */ sh $t6, 0x15a($a0)
/* A958EC 8001E74C 8482015A */ lh $v0, 0x15a($a0)
.L8001E750:
/* A958F0 8001E750 18400007 */ blez $v0, .L8001E770
/* A958F4 8001E754 28410029 */ slti $at, $v0, 0x29
/* A958F8 8001E758 50200006 */ beql $at, $zero, .L8001E774
/* A958FC 8001E75C 8E19014C */ lw $t9, 0x14c($s0)
/* A95900 8001E760 860F0154 */ lh $t7, 0x154($s0)
/* A95904 8001E764 5DE00003 */ bgtzl $t7, .L8001E774
/* A95908 8001E768 8E19014C */ lw $t9, 0x14c($s0)
/* A9590C 8001E76C A6020156 */ sh $v0, 0x156($s0)
.L8001E770:
/* A95910 8001E770 8E19014C */ lw $t9, 0x14c($s0)
.L8001E774:
/* A95914 8001E774 02002025 */ move $a0, $s0
/* A95918 8001E778 02202825 */ move $a1, $s1
/* A9591C 8001E77C 0320F809 */ jalr $t9
/* A95920 8001E780 00000000 */ nop
/* A95924 8001E784 3C018013 */ lui $at, %hi(D_80134FF4)
/* A95928 8001E788 C4224FF4 */ lwc1 $f2, %lo(D_80134FF4)($at)
/* A9592C 8001E78C C600015C */ lwc1 $f0, 0x15c($s0)
/* A95930 8001E790 44803000 */ mtc1 $zero, $f6
/* A95934 8001E794 44061000 */ mfc1 $a2, $f2
/* A95938 8001E798 46020102 */ mul.s $f4, $f0, $f2
/* A9593C 8001E79C 44050000 */ mfc1 $a1, $f0
/* A95940 8001E7A0 26040050 */ addiu $a0, $s0, 0x50
/* A95944 8001E7A4 E7A60010 */ swc1 $f6, 0x10($sp)
/* A95948 8001E7A8 44072000 */ mfc1 $a3, $f4
/* A9594C 8001E7AC 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
/* A95950 8001E7B0 00000000 */ nop
/* A95954 8001E7B4 44804000 */ mtc1 $zero, $f8
/* A95958 8001E7B8 C60A006C */ lwc1 $f10, 0x6c($s0)
/* A9595C 8001E7BC C6020050 */ lwc1 $f2, 0x50($s0)
/* A95960 8001E7C0 460A4032 */ c.eq.s $f8, $f10
/* A95964 8001E7C4 E6020058 */ swc1 $f2, 0x58($s0)
/* A95968 8001E7C8 E6020054 */ swc1 $f2, 0x54($s0)
/* A9596C 8001E7CC 45030062 */ bc1tl .L8001E958
/* A95970 8001E7D0 26060160 */ addiu $a2, $s0, 0x160
/* A95974 8001E7D4 96180088 */ lhu $t8, 0x88($s0)
/* A95978 8001E7D8 3C020001 */ lui $v0, 1
/* A9597C 8001E7DC 00511021 */ addu $v0, $v0, $s1
/* A95980 8001E7E0 33080003 */ andi $t0, $t8, 3
/* A95984 8001E7E4 1100003B */ beqz $t0, .L8001E8D4
/* A95988 8001E7E8 3C098015 */ lui $t1, %hi(D_80157D90) # $t1, 0x8015
/* A9598C 8001E7EC 8C421DE4 */ lw $v0, 0x1de4($v0)
/* A95990 8001E7F0 8D297D90 */ lw $t1, %lo(D_80157D90)($t1)
/* A95994 8001E7F4 3C058015 */ lui $a1, %hi(D_80157D94) # $a1, 0x8015
/* A95998 8001E7F8 24A57D94 */ addiu $a1, %lo(D_80157D94) # addiu $a1, $a1, 0x7d94
/* A9599C 8001E7FC 10490032 */ beq $v0, $t1, .L8001E8C8
/* A959A0 8001E800 3C018015 */ lui $at, %hi(D_80157D90) # $at, 0x8015
/* A959A4 8001E804 AC227D90 */ sw $v0, %lo(D_80157D90)($at)
/* A959A8 8001E808 A4A00000 */ sh $zero, ($a1)
/* A959AC 8001E80C 00001825 */ move $v1, $zero
/* A959B0 8001E810 24040064 */ li $a0, 100
/* A959B4 8001E814 00035040 */ sll $t2, $v1, 1
.L8001E818:
/* A959B8 8001E818 022A5821 */ addu $t3, $s1, $t2
/* A959BC 8001E81C 956C1B9C */ lhu $t4, 0x1b9c($t3)
/* A959C0 8001E820 318D0001 */ andi $t5, $t4, 1
/* A959C4 8001E824 51A00023 */ beql $t5, $zero, .L8001E8B4
/* A959C8 8001E828 24630001 */ addiu $v1, $v1, 1
/* A959CC 8001E82C 00640019 */ multu $v1, $a0
/* A959D0 8001E830 00007012 */ mflo $t6
/* A959D4 8001E834 022E7821 */ addu $t7, $s1, $t6
/* A959D8 8001E838 8DE20814 */ lw $v0, 0x814($t7)
/* A959DC 8001E83C 5040001D */ beql $v0, $zero, .L8001E8B4
/* A959E0 8001E840 24630001 */ addiu $v1, $v1, 1
/* A959E4 8001E844 8C590130 */ lw $t9, 0x130($v0)
/* A959E8 8001E848 5320001A */ beql $t9, $zero, .L8001E8B4
/* A959EC 8001E84C 24630001 */ addiu $v1, $v1, 1
/* A959F0 8001E850 C4500100 */ lwc1 $f16, 0x100($v0)
/* A959F4 8001E854 C4520024 */ lwc1 $f18, 0x24($v0)
/* A959F8 8001E858 46128032 */ c.eq.s $f16, $f18
/* A959FC 8001E85C 00000000 */ nop
/* A95A00 8001E860 4502000E */ bc1fl .L8001E89C
/* A95A04 8001E864 84B80000 */ lh $t8, ($a1)
/* A95A08 8001E868 C4440104 */ lwc1 $f4, 0x104($v0)
/* A95A0C 8001E86C C4460028 */ lwc1 $f6, 0x28($v0)
/* A95A10 8001E870 46062032 */ c.eq.s $f4, $f6
/* A95A14 8001E874 00000000 */ nop
/* A95A18 8001E878 45020008 */ bc1fl .L8001E89C
/* A95A1C 8001E87C 84B80000 */ lh $t8, ($a1)
/* A95A20 8001E880 C4480108 */ lwc1 $f8, 0x108($v0)
/* A95A24 8001E884 C44A002C */ lwc1 $f10, 0x2c($v0)
/* A95A28 8001E888 460A4032 */ c.eq.s $f8, $f10
/* A95A2C 8001E88C 00000000 */ nop
/* A95A30 8001E890 45030008 */ bc1tl .L8001E8B4
/* A95A34 8001E894 24630001 */ addiu $v1, $v1, 1
/* A95A38 8001E898 84B80000 */ lh $t8, ($a1)
.L8001E89C:
/* A95A3C 8001E89C 27080001 */ addiu $t0, $t8, 1
/* A95A40 8001E8A0 A4A80000 */ sh $t0, ($a1)
/* A95A44 8001E8A4 3C058015 */ lui $a1, %hi(D_80157D94) # $a1, 0x8015
/* A95A48 8001E8A8 10000010 */ b .L8001E8EC
/* A95A4C 8001E8AC 24A57D94 */ addiu $a1, %lo(D_80157D94) # addiu $a1, $a1, 0x7d94
/* A95A50 8001E8B0 24630001 */ addiu $v1, $v1, 1
.L8001E8B4:
/* A95A54 8001E8B4 00031C00 */ sll $v1, $v1, 0x10
/* A95A58 8001E8B8 00031C03 */ sra $v1, $v1, 0x10
/* A95A5C 8001E8BC 28610032 */ slti $at, $v1, 0x32
/* A95A60 8001E8C0 5420FFD5 */ bnezl $at, .L8001E818
/* A95A64 8001E8C4 00035040 */ sll $t2, $v1, 1
.L8001E8C8:
/* A95A68 8001E8C8 3C058015 */ lui $a1, %hi(D_80157D94) # $a1, 0x8015
/* A95A6C 8001E8CC 10000007 */ b .L8001E8EC
/* A95A70 8001E8D0 24A57D94 */ addiu $a1, %lo(D_80157D94) # addiu $a1, $a1, 0x7d94
.L8001E8D4:
/* A95A74 8001E8D4 24090001 */ li $t1, 1
/* A95A78 8001E8D8 A7A9003A */ sh $t1, 0x3a($sp)
/* A95A7C 8001E8DC 0C00B638 */ jal Actor_MoveForward
/* A95A80 8001E8E0 02002025 */ move $a0, $s0
/* A95A84 8001E8E4 3C058015 */ lui $a1, %hi(D_80157D94) # $a1, 0x8015
/* A95A88 8001E8E8 24A57D94 */ addiu $a1, %lo(D_80157D94) # addiu $a1, $a1, 0x7d94
.L8001E8EC:
/* A95A8C 8001E8EC 87AA003A */ lh $t2, 0x3a($sp)
/* A95A90 8001E8F0 3C014170 */ lui $at, 0x4170
/* A95A94 8001E8F4 02202025 */ move $a0, $s1
/* A95A98 8001E8F8 15400004 */ bnez $t2, .L8001E90C
/* A95A9C 8001E8FC 3C064120 */ li $a2, 0x41200000 # 0.000000
/* A95AA0 8001E900 84AB0000 */ lh $t3, ($a1)
/* A95AA4 8001E904 51600014 */ beql $t3, $zero, .L8001E958
/* A95AA8 8001E908 26060160 */ addiu $a2, $s0, 0x160
.L8001E90C:
/* A95AAC 8001E90C 44810000 */ mtc1 $at, $f0
/* A95AB0 8001E910 240C001D */ li $t4, 29
/* A95AB4 8001E914 AFAC0014 */ sw $t4, 0x14($sp)
/* A95AB8 8001E918 44070000 */ mfc1 $a3, $f0
/* A95ABC 8001E91C 02002825 */ move $a1, $s0
/* A95AC0 8001E920 0C00B92D */ jal func_8002E4B4
/* A95AC4 8001E924 E7A00010 */ swc1 $f0, 0x10($sp)
/* A95AC8 8001E928 3C018013 */ lui $at, %hi(D_80134FF8)
/* A95ACC 8001E92C C4304FF8 */ lwc1 $f16, %lo(D_80134FF8)($at)
/* A95AD0 8001E930 C6120080 */ lwc1 $f18, 0x80($s0)
/* A95AD4 8001E934 4610903E */ c.le.s $f18, $f16
/* A95AD8 8001E938 00000000 */ nop
/* A95ADC 8001E93C 45020006 */ bc1fl .L8001E958
/* A95AE0 8001E940 26060160 */ addiu $a2, $s0, 0x160
/* A95AE4 8001E944 0C00B55C */ jal Actor_Kill
/* A95AE8 8001E948 02002025 */ move $a0, $s0
/* A95AEC 8001E94C 1000010F */ b .L8001ED8C
/* A95AF0 8001E950 8FBF0024 */ lw $ra, 0x24($sp)
/* A95AF4 8001E954 26060160 */ addiu $a2, $s0, 0x160
.L8001E958:
/* A95AF8 8001E958 00C02825 */ move $a1, $a2
/* A95AFC 8001E95C AFA60028 */ sw $a2, 0x28($sp)
/* A95B00 8001E960 0C0189B7 */ jal Collider_CylinderUpdate
/* A95B04 8001E964 02002025 */ move $a0, $s0
/* A95B08 8001E968 3C010001 */ li $at, 0x00010000 # 0.000000
/* A95B0C 8001E96C 34211E60 */ ori $at, (0x00011E60 & 0xFFFF) # ori $at, $at, 0x1e60
/* A95B10 8001E970 8FA60028 */ lw $a2, 0x28($sp)
/* A95B14 8001E974 02212821 */ addu $a1, $s1, $at
/* A95B18 8001E978 0C01767D */ jal CollisionCheck_SetAC
/* A95B1C 8001E97C 02202025 */ move $a0, $s1
/* A95B20 8001E980 8603001C */ lh $v1, 0x1c($s0)
/* A95B24 8001E984 24010015 */ li $at, 21
/* A95B28 8001E988 10610007 */ beq $v1, $at, .L8001E9A8
/* A95B2C 8001E98C 24010016 */ li $at, 22
/* A95B30 8001E990 10610005 */ beq $v1, $at, .L8001E9A8
/* A95B34 8001E994 24010017 */ li $at, 23
/* A95B38 8001E998 10610003 */ beq $v1, $at, .L8001E9A8
/* A95B3C 8001E99C 24010018 */ li $at, 24
/* A95B40 8001E9A0 54610012 */ bnel $v1, $at, .L8001E9EC
/* A95B44 8001E9A4 860D0154 */ lh $t5, 0x154($s0)
.L8001E9A8:
/* A95B48 8001E9A8 0C01DE0D */ jal Math_Coss
/* A95B4C 8001E9AC 860400B4 */ lh $a0, 0xb4($s0)
/* A95B50 8001E9B0 3C014214 */ li $at, 0x42140000 # 0.000000
/* A95B54 8001E9B4 44812000 */ mtc1 $at, $f4
/* A95B58 8001E9B8 44803000 */ mtc1 $zero, $f6
/* A95B5C 8001E9BC 46040082 */ mul.s $f2, $f0, $f4
/* A95B60 8001E9C0 4602303E */ c.le.s $f6, $f2
/* A95B64 8001E9C4 E60200BC */ swc1 $f2, 0xbc($s0)
/* A95B68 8001E9C8 45020005 */ bc1fl .L8001E9E0
/* A95B6C 8001E9CC C60A00BC */ lwc1 $f10, 0xbc($s0)
/* A95B70 8001E9D0 C60800BC */ lwc1 $f8, 0xbc($s0)
/* A95B74 8001E9D4 10000004 */ b .L8001E9E8
/* A95B78 8001E9D8 E60800BC */ swc1 $f8, 0xbc($s0)
/* A95B7C 8001E9DC C60A00BC */ lwc1 $f10, 0xbc($s0)
.L8001E9E0:
/* A95B80 8001E9E0 46005407 */ neg.s $f16, $f10
/* A95B84 8001E9E4 E61000BC */ swc1 $f16, 0xbc($s0)
.L8001E9E8:
/* A95B88 8001E9E8 860D0154 */ lh $t5, 0x154($s0)
.L8001E9EC:
/* A95B8C 8001E9EC 3C0141F0 */ li $at, 0x41F00000 # 0.000000
/* A95B90 8001E9F0 5DA000E6 */ bgtzl $t5, .L8001ED8C
/* A95B94 8001E9F4 8FBF0024 */ lw $ra, 0x24($sp)
/* A95B98 8001E9F8 44819000 */ mtc1 $at, $f18
/* A95B9C 8001E9FC C6040090 */ lwc1 $f4, 0x90($s0)
/* A95BA0 8001EA00 3C01C248 */ li $at, 0xC2480000 # 0.000000
/* A95BA4 8001EA04 4612203E */ c.le.s $f4, $f18
/* A95BA8 8001EA08 00000000 */ nop
/* A95BAC 8001EA0C 4502000F */ bc1fl .L8001EA4C
/* A95BB0 8001EA10 02002025 */ move $a0, $s0
/* A95BB4 8001EA14 C6000094 */ lwc1 $f0, 0x94($s0)
/* A95BB8 8001EA18 44813000 */ mtc1 $at, $f6
/* A95BBC 8001EA1C 3C014248 */ li $at, 0x42480000 # 0.000000
/* A95BC0 8001EA20 4600303E */ c.le.s $f6, $f0
/* A95BC4 8001EA24 00000000 */ nop
/* A95BC8 8001EA28 45020008 */ bc1fl .L8001EA4C
/* A95BCC 8001EA2C 02002025 */ move $a0, $s0
/* A95BD0 8001EA30 44814000 */ mtc1 $at, $f8
/* A95BD4 8001EA34 00000000 */ nop
/* A95BD8 8001EA38 4608003E */ c.le.s $f0, $f8
/* A95BDC 8001EA3C 00000000 */ nop
/* A95BE0 8001EA40 45030006 */ bc1tl .L8001EA5C
/* A95BE4 8001EA44 3C0E0001 */ lui $t6, 1
/* A95BE8 8001EA48 02002025 */ move $a0, $s0
.L8001EA4C:
/* A95BEC 8001EA4C 0C00BD04 */ jal func_8002F410
/* A95BF0 8001EA50 02202825 */ move $a1, $s1
/* A95BF4 8001EA54 104000CC */ beqz $v0, .L8001ED88
/* A95BF8 8001EA58 3C0E0001 */ lui $t6, 1
.L8001EA5C:
/* A95BFC 8001EA5C 01D17021 */ addu $t6, $t6, $s1
/* A95C00 8001EA60 95CE0A20 */ lhu $t6, 0xa20($t6)
/* A95C04 8001EA64 55C000C9 */ bnezl $t6, .L8001ED8C
/* A95C08 8001EA68 8FBF0024 */ lw $ra, 0x24($sp)
/* A95C0C 8001EA6C 960F001C */ lhu $t7, 0x1c($s0)
/* A95C10 8001EA70 2DE1001A */ sltiu $at, $t7, 0x1a
/* A95C14 8001EA74 10200065 */ beqz $at, .L8001EC0C
/* A95C18 8001EA78 000F7880 */ sll $t7, $t7, 2
/* A95C1C 8001EA7C 3C018013 */ lui $at, %hi(jtbl_80134FFC)
/* A95C20 8001EA80 002F0821 */ addu $at, $at, $t7
/* A95C24 8001EA84 8C2F4FFC */ lw $t7, %lo(jtbl_80134FFC)($at)
/* A95C28 8001EA88 01E00008 */ jr $t7
/* A95C2C 8001EA8C 00000000 */ nop
glabel L8001EA90
/* A95C30 8001EA90 02202025 */ move $a0, $s1
/* A95C34 8001EA94 0C021344 */ jal Item_Give
/* A95C38 8001EA98 24050084 */ li $a1, 132
/* A95C3C 8001EA9C 1000005C */ b .L8001EC10
/* A95C40 8001EAA0 8FA8003C */ lw $t0, 0x3c($sp)
glabel L8001EAA4
/* A95C44 8001EAA4 02202025 */ move $a0, $s1
/* A95C48 8001EAA8 0C021344 */ jal Item_Give
/* A95C4C 8001EAAC 24050085 */ li $a1, 133
/* A95C50 8001EAB0 10000057 */ b .L8001EC10
/* A95C54 8001EAB4 8FA8003C */ lw $t0, 0x3c($sp)
glabel L8001EAB8
/* A95C58 8001EAB8 02202025 */ move $a0, $s1
/* A95C5C 8001EABC 0C021344 */ jal Item_Give
/* A95C60 8001EAC0 24050086 */ li $a1, 134
/* A95C64 8001EAC4 10000052 */ b .L8001EC10
/* A95C68 8001EAC8 8FA8003C */ lw $t0, 0x3c($sp)
glabel L8001EACC
/* A95C6C 8001EACC 02202025 */ move $a0, $s1
/* A95C70 8001EAD0 0C021344 */ jal Item_Give
/* A95C74 8001EAD4 24050087 */ li $a1, 135
/* A95C78 8001EAD8 1000004D */ b .L8001EC10
/* A95C7C 8001EADC 8FA8003C */ lw $t0, 0x3c($sp)
glabel L8001EAE0
/* A95C80 8001EAE0 02202025 */ move $a0, $s1
/* A95C84 8001EAE4 0C021344 */ jal Item_Give
/* A95C88 8001EAE8 24050088 */ li $a1, 136
/* A95C8C 8001EAEC 10000048 */ b .L8001EC10
/* A95C90 8001EAF0 8FA8003C */ lw $t0, 0x3c($sp)
glabel L8001EAF4
/* A95C94 8001EAF4 24190007 */ li $t9, 7
/* A95C98 8001EAF8 10000044 */ b .L8001EC0C
/* A95C9C 8001EAFC AFB9003C */ sw $t9, 0x3c($sp)
glabel L8001EB00
/* A95CA0 8001EB00 24180002 */ li $t8, 2
/* A95CA4 8001EB04 10000041 */ b .L8001EC0C
/* A95CA8 8001EB08 AFB8003C */ sw $t8, 0x3c($sp)
glabel L8001EB0C
/* A95CAC 8001EB0C 02202025 */ move $a0, $s1
/* A95CB0 8001EB10 0C021344 */ jal Item_Give
/* A95CB4 8001EB14 24050083 */ li $a1, 131
/* A95CB8 8001EB18 1000003D */ b .L8001EC10
/* A95CBC 8001EB1C 8FA8003C */ lw $t0, 0x3c($sp)
glabel L8001EB20
/* A95CC0 8001EB20 02202025 */ move $a0, $s1
/* A95CC4 8001EB24 0C021C5D */ jal Health_ChangeBy
/* A95CC8 8001EB28 24050070 */ li $a1, 112
/* A95CCC 8001EB2C 10000038 */ b .L8001EC10
/* A95CD0 8001EB30 8FA8003C */ lw $t0, 0x3c($sp)
glabel L8001EB34
/* A95CD4 8001EB34 02202025 */ move $a0, $s1
/* A95CD8 8001EB38 0C021344 */ jal Item_Give
/* A95CDC 8001EB3C 2405008E */ li $a1, 142
/* A95CE0 8001EB40 10000033 */ b .L8001EC10
/* A95CE4 8001EB44 8FA8003C */ lw $t0, 0x3c($sp)
glabel L8001EB48
/* A95CE8 8001EB48 02202025 */ move $a0, $s1
/* A95CEC 8001EB4C 0C021344 */ jal Item_Give
/* A95CF0 8001EB50 24050003 */ li $a1, 3
/* A95CF4 8001EB54 1000002E */ b .L8001EC10
/* A95CF8 8001EB58 8FA8003C */ lw $t0, 0x3c($sp)
glabel L8001EB5C
/* A95CFC 8001EB5C 02202025 */ move $a0, $s1
/* A95D00 8001EB60 0C021344 */ jal Item_Give
/* A95D04 8001EB64 24050092 */ li $a1, 146
/* A95D08 8001EB68 10000029 */ b .L8001EC10
/* A95D0C 8001EB6C 8FA8003C */ lw $t0, 0x3c($sp)
glabel L8001EB70
/* A95D10 8001EB70 02202025 */ move $a0, $s1
/* A95D14 8001EB74 0C021344 */ jal Item_Give
/* A95D18 8001EB78 24050093 */ li $a1, 147
/* A95D1C 8001EB7C 10000024 */ b .L8001EC10
/* A95D20 8001EB80 8FA8003C */ lw $t0, 0x3c($sp)
glabel L8001EB84
/* A95D24 8001EB84 02202025 */ move $a0, $s1
/* A95D28 8001EB88 0C021344 */ jal Item_Give
/* A95D2C 8001EB8C 24050094 */ li $a1, 148
/* A95D30 8001EB90 1000001F */ b .L8001EC10
/* A95D34 8001EB94 8FA8003C */ lw $t0, 0x3c($sp)
glabel L8001EB98
/* A95D38 8001EB98 2408003C */ li $t0, 60
/* A95D3C 8001EB9C 1000001B */ b .L8001EC0C
/* A95D40 8001EBA0 AFA8003C */ sw $t0, 0x3c($sp)
glabel L8001EBA4
/* A95D44 8001EBA4 24090042 */ li $t1, 66
/* A95D48 8001EBA8 10000018 */ b .L8001EC0C
/* A95D4C 8001EBAC AFA9003C */ sw $t1, 0x3c($sp)
glabel L8001EBB0
/* A95D50 8001EBB0 240A003E */ li $t2, 62
/* A95D54 8001EBB4 10000015 */ b .L8001EC0C
/* A95D58 8001EBB8 AFAA003C */ sw $t2, 0x3c($sp)
glabel L8001EBBC
/* A95D5C 8001EBBC 240B003D */ li $t3, 61
/* A95D60 8001EBC0 10000012 */ b .L8001EC0C
/* A95D64 8001EBC4 AFAB003C */ sw $t3, 0x3c($sp)
glabel L8001EBC8
/* A95D68 8001EBC8 240C0044 */ li $t4, 68
/* A95D6C 8001EBCC 1000000F */ b .L8001EC0C
/* A95D70 8001EBD0 AFAC003C */ sw $t4, 0x3c($sp)
glabel L8001EBD4
/* A95D74 8001EBD4 240D0043 */ li $t5, 67
/* A95D78 8001EBD8 1000000C */ b .L8001EC0C
/* A95D7C 8001EBDC AFAD003C */ sw $t5, 0x3c($sp)
glabel L8001EBE0
/* A95D80 8001EBE0 240E0029 */ li $t6, 41
/* A95D84 8001EBE4 10000009 */ b .L8001EC0C
/* A95D88 8001EBE8 AFAE003C */ sw $t6, 0x3c($sp)
glabel L8001EBEC
/* A95D8C 8001EBEC 240F002A */ li $t7, 42
/* A95D90 8001EBF0 10000006 */ b .L8001EC0C
/* A95D94 8001EBF4 AFAF003C */ sw $t7, 0x3c($sp)
glabel L8001EBF8
/* A95D98 8001EBF8 2419002D */ li $t9, 45
/* A95D9C 8001EBFC 10000003 */ b .L8001EC0C
/* A95DA0 8001EC00 AFB9003C */ sw $t9, 0x3c($sp)
glabel L8001EC04
/* A95DA4 8001EC04 2418002C */ li $t8, 44
/* A95DA8 8001EC08 AFB8003C */ sw $t8, 0x3c($sp)
glabel L8001EC0C
.L8001EC0C:
/* A95DAC 8001EC0C 8FA8003C */ lw $t0, 0x3c($sp)
.L8001EC10:
/* A95DB0 8001EC10 5100000A */ beql $t0, $zero, .L8001EC3C
/* A95DB4 8001EC14 8602001C */ lh $v0, 0x1c($s0)
/* A95DB8 8001EC18 02002025 */ move $a0, $s0
/* A95DBC 8001EC1C 0C00BD04 */ jal func_8002F410
/* A95DC0 8001EC20 02202825 */ move $a1, $s1
/* A95DC4 8001EC24 14400004 */ bnez $v0, .L8001EC38
/* A95DC8 8001EC28 8FA6003C */ lw $a2, 0x3c($sp)
/* A95DCC 8001EC2C 02002025 */ move $a0, $s0
/* A95DD0 8001EC30 0C00BD55 */ jal func_8002F554
/* A95DD4 8001EC34 02202825 */ move $a1, $s1
.L8001EC38:
/* A95DD8 8001EC38 8602001C */ lh $v0, 0x1c($s0)
.L8001EC3C:
/* A95DDC 8001EC3C 2449FFFA */ addiu $t1, $v0, -6
/* A95DE0 8001EC40 2D210013 */ sltiu $at, $t1, 0x13
/* A95DE4 8001EC44 10200011 */ beqz $at, .L8001EC8C
/* A95DE8 8001EC48 00094880 */ sll $t1, $t1, 2
/* A95DEC 8001EC4C 3C018013 */ lui $at, %hi(jtbl_80135064)
/* A95DF0 8001EC50 00290821 */ addu $at, $at, $t1
/* A95DF4 8001EC54 8C295064 */ lw $t1, %lo(jtbl_80135064)($at)
/* A95DF8 8001EC58 01200008 */ jr $t1
/* A95DFC 8001EC5C 00000000 */ nop
glabel L8001EC60
/* A95E00 8001EC60 02002025 */ move $a0, $s0
/* A95E04 8001EC64 0C00BD04 */ jal func_8002F410
/* A95E08 8001EC68 02202825 */ move $a1, $s1
/* A95E0C 8001EC6C 10400046 */ beqz $v0, .L8001ED88
/* A95E10 8001EC70 02202025 */ move $a0, $s1
/* A95E14 8001EC74 0C00B368 */ jal Flags_SetCollectible
/* A95E18 8001EC78 86050150 */ lh $a1, 0x150($s0)
/* A95E1C 8001EC7C 0C00B55C */ jal Actor_Kill
/* A95E20 8001EC80 02002025 */ move $a0, $s0
/* A95E24 8001EC84 10000041 */ b .L8001ED8C
/* A95E28 8001EC88 8FBF0024 */ lw $ra, 0x24($sp)
glabel L8001EC8C
.L8001EC8C:
/* A95E2C 8001EC8C 28410003 */ slti $at, $v0, 3
/* A95E30 8001EC90 14200004 */ bnez $at, .L8001ECA4
/* A95E34 8001EC94 3C078013 */ lui $a3, %hi(D_801333E0) # $a3, 0x8013
/* A95E38 8001EC98 24010013 */ li $at, 19
/* A95E3C 8001EC9C 1441000D */ bne $v0, $at, .L8001ECD4
/* A95E40 8001ECA0 8FAB003C */ lw $t3, 0x3c($sp)
.L8001ECA4:
/* A95E44 8001ECA4 3C0A8013 */ lui $t2, %hi(D_801333E8) # $t2, 0x8013
/* A95E48 8001ECA8 24E733E0 */ addiu $a3, %lo(D_801333E0) # addiu $a3, $a3, 0x33e0
/* A95E4C 8001ECAC 254A33E8 */ addiu $t2, %lo(D_801333E8) # addiu $t2, $t2, 0x33e8
/* A95E50 8001ECB0 3C058013 */ lui $a1, %hi(D_801333D4) # $a1, 0x8013
/* A95E54 8001ECB4 24A533D4 */ addiu $a1, %lo(D_801333D4) # addiu $a1, $a1, 0x33d4
/* A95E58 8001ECB8 AFAA0014 */ sw $t2, 0x14($sp)
/* A95E5C 8001ECBC AFA70010 */ sw $a3, 0x10($sp)
/* A95E60 8001ECC0 24044803 */ li $a0, 18435
/* A95E64 8001ECC4 0C03DCE3 */ jal Audio_PlaySoundGeneral
/* A95E68 8001ECC8 24060004 */ li $a2, 4
/* A95E6C 8001ECCC 10000019 */ b .L8001ED34
/* A95E70 8001ECD0 02202025 */ move $a0, $s1
.L8001ECD4:
/* A95E74 8001ECD4 1160000C */ beqz $t3, .L8001ED08
/* A95E78 8001ECD8 3C078013 */ lui $a3, %hi(D_801333E0) # lui $a1, 0x8013
/* A95E7C 8001ECDC 02002025 */ move $a0, $s0
/* A95E80 8001ECE0 0C00BD04 */ jal func_8002F410
/* A95E84 8001ECE4 02202825 */ move $a1, $s1
/* A95E88 8001ECE8 10400027 */ beqz $v0, .L8001ED88
/* A95E8C 8001ECEC 02202025 */ move $a0, $s1
/* A95E90 8001ECF0 0C00B368 */ jal Flags_SetCollectible
/* A95E94 8001ECF4 86050150 */ lh $a1, 0x150($s0)
/* A95E98 8001ECF8 0C00B55C */ jal Actor_Kill
/* A95E9C 8001ECFC 02002025 */ move $a0, $s0
/* A95EA0 8001ED00 10000022 */ b .L8001ED8C
/* A95EA4 8001ED04 8FBF0024 */ lw $ra, 0x24($sp)
.L8001ED08:
/* A95EA8 8001ED08 3C0C8013 */ lui $t4, %hi(D_801333E8) # lui $a1, 0x8013
/* A95EAC 8001ED0C 24E733E0 */ addiu $a3, %lo(D_801333E0) # addiu $a3, $a3, 0x33e0
/* A95EB0 8001ED10 258C33E8 */ addiu $t4, %lo(D_801333E8) # addiu $t4, $t4, 0x33e8
/* A95EB4 8001ED14 3C058013 */ lui $a1, %hi(D_801333D4) # lui $a1, 0x8013
/* A95EB8 8001ED18 24A533D4 */ addiu $a1, %lo(D_801333D4) # addiu $a1, $a1, 0x33d4
/* A95EBC 8001ED1C AFAC0014 */ sw $t4, 0x14($sp)
/* A95EC0 8001ED20 AFA70010 */ sw $a3, 0x10($sp)
/* A95EC4 8001ED24 24044824 */ li $a0, 18468
/* A95EC8 8001ED28 0C03DCE3 */ jal Audio_PlaySoundGeneral
/* A95ECC 8001ED2C 24060004 */ li $a2, 4
/* A95ED0 8001ED30 02202025 */ move $a0, $s1
.L8001ED34:
/* A95ED4 8001ED34 0C00B368 */ jal Flags_SetCollectible
/* A95ED8 8001ED38 86050150 */ lh $a1, 0x150($s0)
/* A95EDC 8001ED3C 44805000 */ mtc1 $zero, $f10
/* A95EE0 8001ED40 44808000 */ mtc1 $zero, $f16
/* A95EE4 8001ED44 44809000 */ mtc1 $zero, $f18
/* A95EE8 8001ED48 240D000F */ li $t5, 15
/* A95EEC 8001ED4C 240E0023 */ li $t6, 35
/* A95EF0 8001ED50 A60D015A */ sh $t5, 0x15a($s0)
/* A95EF4 8001ED54 A60E0154 */ sh $t6, 0x154($s0)
/* A95EF8 8001ED58 A60000B8 */ sh $zero, 0xb8($s0)
/* A95EFC 8001ED5C 02002025 */ move $a0, $s0
/* A95F00 8001ED60 8E05015C */ lw $a1, 0x15c($s0)
/* A95F04 8001ED64 E60A0068 */ swc1 $f10, 0x68($s0)
/* A95F08 8001ED68 E6100060 */ swc1 $f16, 0x60($s0)
/* A95F0C 8001ED6C 0C00B58B */ jal Actor_SetScale
/* A95F10 8001ED70 E612006C */ swc1 $f18, 0x6c($s0)
/* A95F14 8001ED74 3C058002 */ lui $a1, %hi(func_8001E5C8) # $a1, 0x8002
/* A95F18 8001ED78 A6000152 */ sh $zero, 0x152($s0)
/* A95F1C 8001ED7C 24A5E5C8 */ addiu $a1, %lo(func_8001E5C8) # addiu $a1, $a1, -0x1a38
/* A95F20 8001ED80 0C00764C */ jal EnItem00_SetupAction
/* A95F24 8001ED84 02002025 */ move $a0, $s0
.L8001ED88:
/* A95F28 8001ED88 8FBF0024 */ lw $ra, 0x24($sp)
.L8001ED8C:
/* A95F2C 8001ED8C 8FB0001C */ lw $s0, 0x1c($sp)
/* A95F30 8001ED90 8FB10020 */ lw $s1, 0x20($sp)
/* A95F34 8001ED94 03E00008 */ jr $ra
/* A95F38 8001ED98 27BD0048 */ addiu $sp, $sp, 0x48