summaryrefslogtreecommitdiff
path: root/asm/code_080732D0.s
diff options
context:
space:
mode:
authoroctorock <79596758+octorock@users.noreply.github.com>2021-03-16 00:22:13 +0100
committeroctorock <79596758+octorock@users.noreply.github.com>2021-03-24 23:27:31 +0100
commit74b661df24dbebf42496cb3cce2049cb3f15c57b (patch)
treeaaa852594d5ae6629baffeacb9c6fa339cdeb400 /asm/code_080732D0.s
parent7846a385515bb7e63a2f79ef06c5c258edf025d5 (diff)
Split items and extract pointers
Diffstat (limited to 'asm/code_080732D0.s')
-rw-r--r--asm/code_080732D0.s3191
1 files changed, 30 insertions, 3161 deletions
diff --git a/asm/code_080732D0.s b/asm/code_080732D0.s
index 42d8326a..b64b3477 100644
--- a/asm/code_080732D0.s
+++ b/asm/code_080732D0.s
@@ -4331,3173 +4331,42 @@ sub_080752E8: @ 0x080752E8
.align 2, 0
_080752FC: .4byte gItemFunctions
- thumb_func_start ItemDebug
-ItemDebug: @ 0x08075300
- push {r4, r5, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- bl sub_08077BD4
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08077E78
- pop {r4, r5, pc}
-
- thumb_func_start ItemSword
-ItemSword: @ 0x08075314
- push {lr}
- ldr r2, _08075330 @ =gPlayerState
- adds r2, #0xa8
- movs r3, #2
- strb r3, [r2]
- ldr r3, _08075334 @ =gUnk_0811BD44
- ldrb r2, [r0, #4]
- lsls r2, r2, #2
- adds r2, r2, r3
- ldr r2, [r2]
- bl _call_via_r2
- pop {pc}
- .align 2, 0
-_08075330: .4byte gPlayerState
-_08075334: .4byte gUnk_0811BD44
-
- thumb_func_start sub_08075338
-sub_08075338: @ 0x08075338
- push {r4, r5, r6, r7, lr}
- adds r5, r0, #0
- adds r7, r1, #0
- ldr r4, _0807536C @ =gPlayerState
- ldr r1, [r4, #0x30]
- movs r3, #0x80
- adds r0, r1, #0
- ands r0, r3
- cmp r0, #0
- beq _08075370
- ldrb r0, [r5, #9]
- movs r1, #0x80
- orrs r1, r0
- strb r1, [r5, #9]
- adds r0, r5, #0
- adds r1, r7, #0
- bl sub_08077D38
- movs r0, #0xc0
- lsls r0, r0, #4
- strh r0, [r4, #8]
- movs r0, #0x75
- bl SoundReq
- b _080754B4
- .align 2, 0
-_0807536C: .4byte gPlayerState
-_08075370:
- ldrb r2, [r4, #2]
- cmp r2, #0
- beq _080753DC
- movs r6, #7
- adds r0, r6, #0
- ands r0, r2
- cmp r0, #3
- beq _080753E4
- movs r0, #0x78
- ands r0, r2
- cmp r0, #0
- bne _080753E4
- ldr r3, _080753D4 @ =gPlayerEntity
- ldr r1, [r3, #0x20]
- ldr r0, _080753D8 @ =0x00017FFF
- cmp r1, r0
- bhi _080753E4
- adds r0, r4, #0
- adds r0, #0xac
- ldrh r1, [r0]
- movs r0, #0x40
- ands r0, r1
- cmp r0, #0
- beq _080753E4
- ldr r0, [r3, #0x34]
- cmp r0, #0
- beq _080753E4
- movs r0, #0x20
- orrs r0, r2
- strb r0, [r4, #2]
- adds r0, r4, #0
- adds r0, #0xab
- strb r6, [r0]
- movs r0, #8
- asrs r0, r7
- lsls r1, r0, #4
- orrs r0, r1
- ldrb r1, [r4, #4]
- orrs r0, r1
- strb r0, [r4, #4]
- adds r0, r5, #0
- bl sub_08077B98
- movs r0, #6
- strb r0, [r5, #4]
- adds r0, r5, #0
- adds r1, r7, #0
- bl sub_08075898
- b _080754B4
- .align 2, 0
-_080753D4: .4byte gPlayerEntity
-_080753D8: .4byte 0x00017FFF
-_080753DC:
- ldr r2, _080753F0 @ =gPlayerEntity
- ldr r0, [r2, #0x34]
- cmp r0, #0
- beq _080753F4
-_080753E4:
- adds r0, r5, #0
- adds r1, r7, #0
- bl sub_080759B8
- b _080754B4
- .align 2, 0
-_080753F0: .4byte gPlayerEntity
-_080753F4:
- movs r6, #0x80
- lsls r6, r6, #0xb
- ands r6, r1
- cmp r6, #0
- beq _08075480
- adds r0, r4, #0
- adds r0, #0xac
- ldrh r1, [r0]
- movs r0, #2
- ands r0, r1
- lsls r0, r0, #0x10
- lsrs r6, r0, #0x10
- cmp r6, #0
- bne _0807541E
- ldr r0, [r4, #0x2c]
- cmp r0, #0
- beq _080754B4
- bl DeleteEntity
- str r6, [r4, #0x2c]
- b _080754B4
-_0807541E:
- adds r0, r5, #0
- adds r1, r7, #0
- bl sub_08077D38
- adds r0, r5, #0
- bl sub_08077B98
- movs r3, #8
- adds r1, r3, #0
- asrs r1, r7
- lsls r0, r1, #4
- orrs r0, r1
- ldrb r2, [r4, #4]
- orrs r0, r2
- strb r0, [r4, #4]
- ldrb r2, [r4, #0xa]
- adds r0, r1, #0
- orrs r0, r2
- strb r0, [r4, #0xa]
- ldrb r0, [r4, #0xb]
- orrs r1, r0
- strb r1, [r4, #0xb]
- strb r3, [r5, #4]
- movs r0, #0x14
- strb r0, [r5, #7]
- movs r0, #6
- strb r0, [r5, #0xf]
- ldrb r1, [r5, #9]
- movs r0, #0x80
- orrs r0, r1
- strb r0, [r5, #9]
- adds r1, r4, #0
- adds r1, #0xab
- movs r0, #2
- strb r0, [r1]
- ldr r0, [r4, #0x30]
- movs r1, #0x80
- lsls r1, r1, #0x14
- orrs r0, r1
- str r0, [r4, #0x30]
- movs r1, #0x98
- lsls r1, r1, #1
- adds r0, r5, #0
- bl sub_08077DF4
- movs r0, #0x77
- bl SoundReq
- b _080754B4
-_08075480:
- ldrb r1, [r4, #0x1b]
- adds r0, r3, #0
- ands r0, r1
- cmp r0, #0
- bne _08075492
- strb r6, [r4, #0x1b]
- adds r0, r2, #0
- bl sub_0806F948
-_08075492:
- ldr r1, [r4, #0x2c]
- cmp r1, #0
- beq _080754A6
- ldrb r0, [r1, #9]
- cmp r0, #1
- beq _080754A6
- adds r0, r1, #0
- bl DeleteEntity
- str r6, [r4, #0x2c]
-_080754A6:
- adds r0, r5, #0
- adds r1, r7, #0
- bl sub_08077D38
- adds r0, r5, #0
- bl sub_08077B98
-_080754B4:
- pop {r4, r5, r6, r7, pc}
- .align 2, 0
-
- thumb_func_start sub_080754B8
-sub_080754B8: @ 0x080754B8
- push {r4, r5, r6, r7, lr}
- adds r4, r0, #0
- adds r6, r1, #0
- ldr r7, _080754D4 @ =gPlayerState
- ldrb r1, [r7, #0x1b]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- beq _080754D8
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_08075694
- b _0807557E
- .align 2, 0
-_080754D4: .4byte gPlayerState
-_080754D8:
- ldrb r0, [r7, #4]
- cmp r0, #0
- beq _08075576
- adds r0, r4, #0
- bl UpdateItemAnim
- ldrb r0, [r4, #0xe]
- cmp r0, #0
- beq _080754F2
- ldrb r1, [r4, #9]
- movs r0, #0x7f
- ands r0, r1
- strb r0, [r4, #9]
-_080754F2:
- ldr r0, _0807552C @ =gPlayerEntity
- adds r0, #0x5b
- ldrb r1, [r0]
- movs r0, #1
- ands r0, r1
- cmp r0, #0
- beq _08075538
- bl sub_0807B014
- adds r5, r0, #0
- cmp r5, #0
- beq _08075538
- movs r0, #8
- movs r1, #0xf
- movs r2, #2
- bl FindEntityByID
- cmp r0, #0
- bne _08075538
- adds r0, r4, #0
- movs r1, #0xf
- bl CreatePlayerBomb
- cmp r5, #0xf
- bne _08075530
- adds r1, r7, #0
- adds r1, #0xab
- movs r0, #5
- b _08075536
- .align 2, 0
-_0807552C: .4byte gPlayerEntity
-_08075530:
- adds r1, r7, #0
- adds r1, #0xab
- movs r0, #8
-_08075536:
- strb r0, [r1]
-_08075538:
- ldrb r1, [r4, #0xe]
- movs r2, #0x80
- adds r0, r2, #0
- ands r0, r1
- cmp r0, #0
- beq _0807557E
- ldr r1, _08075568 @ =gPlayerState
- ldr r0, [r1, #0x30]
- ands r0, r2
- cmp r0, #0
- bne _0807555C
- adds r0, r1, #0
- adds r0, #0xac
- ldrh r1, [r0]
- movs r0, #1
- ands r0, r1
- cmp r0, #0
- bne _0807556C
-_0807555C:
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_080759B8
- b _0807557E
- .align 2, 0
-_08075568: .4byte gPlayerState
-_0807556C:
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_08075580
- b _0807557E
-_08075576:
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_080759B8
-_0807557E:
- pop {r4, r5, r6, r7, pc}
-
- thumb_func_start sub_08075580
-sub_08075580: @ 0x08075580
- push {r4, r5, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- bl sub_08077EFC
- cmp r0, #0
- beq _080755E6
- ldr r2, _080755C8 @ =gPlayerState
- ldrb r3, [r2, #2]
- cmp r3, #0
- bne _080755E6
- movs r1, #8
- asrs r1, r5
- ldrb r0, [r2, #0xa]
- bics r0, r1
- strb r0, [r2, #0xa]
- movs r0, #1
- strb r0, [r2, #0x1b]
- ldr r0, [r2, #0x2c]
- adds r0, #0x40
- movs r1, #0xd
- strb r1, [r0]
- strb r3, [r4, #0xf]
- movs r0, #2
- strb r0, [r4, #4]
- adds r0, r2, #0
- adds r0, #0xac
- ldrh r1, [r0]
- movs r0, #0x80
- lsls r0, r0, #2
- ands r0, r1
- cmp r0, #0
- beq _080755CC
- movs r0, #0x28
- b _080755CE
- .align 2, 0
-_080755C8: .4byte gPlayerState
-_080755CC:
- movs r0, #0x50
-_080755CE:
- strb r0, [r4, #7]
- movs r1, #0xb4
- lsls r1, r1, #1
- adds r0, r4, #0
- bl sub_08077DF4
- movs r0, #0x43
- movs r1, #0
- movs r2, #0
- bl CreateObject
- b _080755EE
-_080755E6:
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_080759B8
-_080755EE:
- pop {r4, r5, pc}
-
- thumb_func_start sub_080755F0
-sub_080755F0: @ 0x080755F0
- push {r4, r5, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- bl sub_08077EFC
- cmp r0, #0
- beq _08075642
- adds r0, r4, #0
- bl sub_08077EC8
- cmp r0, #0
- bne _0807564A
- ldr r2, _08075634 @ =gPlayerState
- ldrb r3, [r2, #0x1b]
- ldrb r0, [r2, #4]
- orrs r0, r3
- cmp r0, #0
- beq _08075638
- ldrb r0, [r4, #7]
- subs r0, #1
- strb r0, [r4, #7]
- lsls r0, r0, #0x18
- cmp r0, #0
- bne _0807564A
- movs r0, #3
- strb r0, [r4, #4]
- ldrb r0, [r4, #9]
- movs r1, #0x80
- orrs r0, r1
- strb r0, [r4, #9]
- movs r0, #0x20
- orrs r0, r3
- strb r0, [r2, #0x1b]
- b _0807564A
- .align 2, 0
-_08075634: .4byte gPlayerState
-_08075638:
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_080759B8
- b _0807564A
-_08075642:
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_080759B8
-_0807564A:
- pop {r4, r5, pc}
-
- thumb_func_start sub_0807564C
-sub_0807564C: @ 0x0807564C
- push {r4, r5, r6, lr}
- adds r4, r0, #0
- adds r6, r1, #0
- ldr r5, _08075668 @ =gPlayerState
- ldrb r1, [r5, #0x1b]
- ldrb r0, [r5, #4]
- orrs r0, r1
- cmp r0, #0
- bne _0807566C
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_080759B8
- b _08075692
- .align 2, 0
-_08075668: .4byte gPlayerState
-_0807566C:
- adds r0, r4, #0
- bl sub_08077EC8
- cmp r0, #0
- bne _08075692
- adds r0, r4, #0
- bl sub_08077EFC
- cmp r0, #0
- beq _0807568A
- ldrb r1, [r5, #0x1b]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- beq _08075692
-_0807568A:
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_08075694
-_08075692:
- pop {r4, r5, r6, pc}
-
- thumb_func_start sub_08075694
-sub_08075694: @ 0x08075694
- push {r4, r5, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- movs r3, #1
- strb r3, [r4, #7]
- ldr r2, _080756C4 @ =gPlayerState
- ldr r1, [r2, #0x30]
- movs r0, #0x80
- lsls r0, r0, #0x14
- ands r0, r1
- cmp r0, #0
- beq _080756D0
- ldr r0, _080756C8 @ =0xF7FFFFFF
- ands r1, r0
- ldr r0, _080756CC @ =0xFFFBFFFF
- ands r1, r0
- str r1, [r2, #0x30]
- movs r1, #0x96
- lsls r1, r1, #1
- adds r0, r4, #0
- bl sub_08077DF4
- b _080756E0
- .align 2, 0
-_080756C4: .4byte gPlayerState
-_080756C8: .4byte 0xF7FFFFFF
-_080756CC: .4byte 0xFFFBFFFF
-_080756D0:
- adds r0, r2, #0
- adds r0, #0xab
- strb r3, [r0]
- movs r1, #0x92
- lsls r1, r1, #1
- adds r0, r4, #0
- bl sub_08077DF4
-_080756E0:
- ldr r2, _08075730 @ =gPlayerState
- movs r0, #8
- asrs r0, r5
- ldrb r1, [r2, #0xa]
- orrs r0, r1
- strb r0, [r2, #0xa]
- movs r0, #4
- strb r0, [r4, #4]
- movs r0, #6
- strb r0, [r4, #0xf]
- ldr r0, _08075734 @ =gPlayerEntity
- adds r0, #0x40
- movs r1, #0x1e
- strb r1, [r0]
- ldrb r1, [r2, #0x1b]
- movs r0, #0x40
- orrs r0, r1
- movs r1, #0xdf
- ands r0, r1
- strb r0, [r2, #0x1b]
- adds r3, r2, #0
- adds r3, #0xa0
- ldrb r0, [r3]
- cmp r0, #4
- bne _08075726
- ldr r0, [r2, #0x30]
- movs r1, #0x80
- lsls r1, r1, #0xf
- ands r0, r1
- cmp r0, #0
- bne _08075726
- movs r0, #1
- strb r0, [r3]
- bl sub_0807A108
-_08075726:
- movs r0, #0x76
- bl SoundReq
- pop {r4, r5, pc}
- .align 2, 0
-_08075730: .4byte gPlayerState
-_08075734: .4byte gPlayerEntity
-
- thumb_func_start sub_08075738
-sub_08075738: @ 0x08075738
- push {r4, r5, r6, r7, lr}
- adds r4, r0, #0
- adds r6, r1, #0
- ldr r5, _08075750 @ =gPlayerState
- ldrb r0, [r5, #4]
- cmp r0, #0
- bne _08075754
- adds r0, r4, #0
- bl sub_080759B8
- b _0807588C
- .align 2, 0
-_08075750: .4byte gPlayerState
-_08075754:
- adds r0, r4, #0
- bl UpdateItemAnim
- adds r0, r4, #0
- bl sub_08077F10
- cmp r0, #0
- beq _08075768
- movs r0, #2
- strb r0, [r4, #7]
-_08075768:
- ldrb r2, [r5, #0x1b]
- movs r0, #0x10
- ands r0, r2
- cmp r0, #0
- beq _080757D4
- ldrb r1, [r5, #0xd]
- movs r2, #0x80
- adds r0, r2, #0
- ands r0, r1
- cmp r0, #0
- bne _08075780
- strb r1, [r4, #0xb]
-_08075780:
- ldr r1, _080757D0 @ =gPlayerEntity
- ldrb r0, [r4, #0xb]
- strb r0, [r1, #0x15]
- movs r0, #0xc0
- lsls r0, r0, #1
- strh r0, [r1, #0x24]
- ldrb r1, [r4, #0xe]
- adds r0, r2, #0
- ands r0, r1
- cmp r0, #0
- beq _0807588C
- movs r2, #0xa
- adds r0, r5, #0
- adds r0, #0xac
- ldrh r1, [r0]
- movs r0, #0x80
- lsls r0, r0, #4
- ands r0, r1
- cmp r0, #0
- beq _080757AA
- movs r2, #0xf
-_080757AA:
- ldrb r0, [r4, #8]
- adds r0, #1
- strb r0, [r4, #8]
- movs r1, #0xff
- lsls r0, r0, #0x18
- lsrs r0, r0, #0x18
- cmp r2, r0
- bls _080757C6
- ldrb r0, [r4, #7]
- subs r0, #1
- strb r0, [r4, #7]
- ands r0, r1
- cmp r0, #0
- bne _0807588C
-_080757C6:
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_080759B8
- b _0807588C
- .align 2, 0
-_080757D0: .4byte gPlayerEntity
-_080757D4:
- ldr r7, _08075890 @ =gPlayerEntity
- adds r0, r7, #0
- adds r0, #0x5b
- ldrb r1, [r0]
- movs r0, #1
- ands r0, r1
- cmp r0, #0
- beq _08075816
- movs r0, #0x80
- ands r0, r2
- cmp r0, #0
- bne _08075816
- adds r0, r5, #0
- adds r0, #0xac
- ldrh r1, [r0]
- movs r0, #0x80
- lsls r0, r0, #1
- ands r0, r1
- cmp r0, #0
- beq _08075816
- adds r0, r4, #0
- movs r1, #0x14
- bl CreatePlayerBomb
- adds r2, r0, #0
- cmp r2, #0
- beq _08075816
- ldrb r0, [r7, #0x14]
- movs r1, #6
- ands r1, r0
- movs r0, #0x80
- orrs r1, r0
- strb r1, [r2, #0x14]
-_08075816:
- ldr r5, _08075890 @ =gPlayerEntity
- adds r0, r5, #0
- adds r0, #0x5b
- ldrb r1, [r0]
- movs r0, #2
- ands r0, r1
- cmp r0, #0
- beq _0807587A
- ldr r2, _08075894 @ =gPlayerState
- ldrb r3, [r2, #0x1b]
- movs r0, #0x80
- ands r0, r3
- cmp r0, #0
- bne _0807587A
- adds r0, r2, #0
- adds r0, #0xac
- ldrh r1, [r0]
- movs r0, #0x20
- ands r0, r1
- cmp r0, #0
- beq _0807587A
- ldrb r0, [r4, #7]
- subs r0, #1
- strb r0, [r4, #7]
- lsls r0, r0, #0x18
- cmp r0, #0
- beq _0807587A
- movs r0, #0x10
- orrs r0, r3
- strb r0, [r2, #0x1b]
- adds r1, r2, #0
- adds r1, #0xab
- movs r0, #6
- strb r0, [r1]
- ldrb r0, [r5, #0x14]
- lsls r0, r0, #2
- strb r0, [r4, #0xb]
- movs r0, #1
- strb r0, [r4, #7]
- strb r0, [r4, #8]
- movs r1, #8
- asrs r1, r6
- ldrb r0, [r2, #0xa]
- bics r0, r1
- strb r0, [r2, #0xa]
- movs r1, #0x94
- lsls r1, r1, #1
- adds r0, r4, #0
- bl sub_08077DF4
-_0807587A:
- ldrb r1, [r4, #0xe]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- beq _0807588C
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_080759B8
-_0807588C:
- pop {r4, r5, r6, r7, pc}
- .align 2, 0
-_08075890: .4byte gPlayerEntity
-_08075894: .4byte gPlayerState
-
- thumb_func_start sub_08075898
-sub_08075898: @ 0x08075898
- push {lr}
- adds r2, r0, #0
- ldr r0, _080758AC @ =gPlayerState
- ldrb r0, [r0, #4]
- cmp r0, #0
- bne _080758AA
- adds r0, r2, #0
- bl sub_080759B8
-_080758AA:
- pop {pc}
- .align 2, 0
-_080758AC: .4byte gPlayerState
-
- thumb_func_start sub_080758B0
-sub_080758B0: @ 0x080758B0
- push {r4, r5, lr}
- adds r4, r0, #0
- ldr r5, _080758C4 @ =gPlayerState
- ldrb r0, [r5, #4]
- cmp r0, #0
- bne _080758C8
- adds r0, r4, #0
- bl sub_080759B8
- b _080758F8
- .align 2, 0
-_080758C4: .4byte gPlayerState
-_080758C8:
- adds r0, r4, #0
- bl UpdateItemAnim
- ldrb r1, [r4, #0xe]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- beq _080758F8
- movs r0, #0
- strb r0, [r4, #0xf]
- ldrb r1, [r5, #0x1b]
- movs r0, #0x20
- ands r0, r1
- cmp r0, #0
- beq _080758EA
- movs r0, #3
- b _080758EC
-_080758EA:
- movs r0, #5
-_080758EC:
- strb r0, [r4, #4]
- ldr r2, _080758FC @ =gPlayerState
- ldrb r1, [r2, #0x1b]
- movs r0, #0xf7
- ands r0, r1
- strb r0, [r2, #0x1b]
-_080758F8:
- pop {r4, r5, pc}
- .align 2, 0
-_080758FC: .4byte gPlayerState
-
- thumb_func_start sub_08075900
-sub_08075900: @ 0x08075900
- push {r4, r5, r6, lr}
- adds r4, r0, #0
- adds r6, r1, #0
- ldr r5, _08075920 @ =gPlayerState
- ldrb r0, [r5, #0x12]
- cmp r0, #0x11
- bne _08075928
- ldr r0, [r5, #0x30]
- ldr r1, _08075924 @ =0xFFFBFFFF
- ands r0, r1
- str r0, [r5, #0x30]
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_080759B8
- b _080759B2
- .align 2, 0
-_08075920: .4byte gPlayerState
-_08075924: .4byte 0xFFFBFFFF
-_08075928:
- adds r0, r4, #0
- bl UpdateItemAnim
- ldrb r1, [r5, #0x1b]
- movs r2, #0x80
- adds r0, r2, #0
- ands r0, r1
- cmp r0, #0
- beq _08075948
- movs r0, #0xa0
- strb r0, [r5, #0x1b]
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_0807564C
- b _080759B2
-_08075948:
- ldrb r0, [r4, #7]
- cmp r0, #0
- beq _08075998
- subs r0, #1
- strb r0, [r4, #7]
- lsls r0, r0, #0x18
- cmp r0, #0
- bne _08075962
- movs r1, #0x9a
- lsls r1, r1, #1
- adds r0, r4, #0
- bl sub_08077DF4
-_08075962:
- ldr r4, _08075990 @ =gPlayerEntity
- ldrb r0, [r4, #0x14]
- lsrs r0, r0, #1
- lsls r0, r0, #3
- strb r0, [r4, #0x15]
- movs r0, #0xc0
- lsls r0, r0, #2
- strh r0, [r4, #0x24]
- bl sub_08079E08
- ldr r0, _08075994 @ =gScreenTransition
- ldr r0, [r0]
- movs r1, #3
- ands r0, r1
- cmp r0, #0
- bne _080759B2
- adds r0, r4, #0
- movs r1, #0x11
- movs r2, #0x40
- bl CreateFx
- b _080759B2
- .align 2, 0
-_08075990: .4byte gPlayerEntity
-_08075994: .4byte gScreenTransition
-_08075998:
- ldrb r1, [r4, #0xe]
- adds r0, r2, #0
- ands r0, r1
- cmp r0, #0
- beq _080759B2
- ldr r0, [r5, #0x30]
- ldr r1, _080759B4 @ =0xFFFBFFFF
- ands r0, r1
- str r0, [r5, #0x30]
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_080759B8
-_080759B2:
- pop {r4, r5, r6, pc}
- .align 2, 0
-_080759B4: .4byte 0xFFFBFFFF
-
- thumb_func_start sub_080759B8
-sub_080759B8: @ 0x080759B8
- push {r4, lr}
- adds r3, r0, #0
- adds r4, r1, #0
- ldr r2, _080759E8 @ =gPlayerState
- ldr r1, [r2, #0x30]
- movs r0, #0x80
- ands r1, r0
- cmp r1, #0
- bne _080759D0
- ldr r0, _080759EC @ =gPlayerEntity
- adds r0, #0x40
- strb r1, [r0]
-_080759D0:
- ldr r0, [r2, #0x30]
- ldr r1, _080759F0 @ =0xF7FFFFFF
- ands r0, r1
- str r0, [r2, #0x30]
- movs r0, #0
- strb r0, [r2, #0x1b]
- str r0, [r2, #0x2c]
- adds r0, r3, #0
- adds r1, r4, #0
- bl sub_08077E78
- pop {r4, pc}
- .align 2, 0
-_080759E8: .4byte gPlayerState
-_080759EC: .4byte gPlayerEntity
-_080759F0: .4byte 0xF7FFFFFF
-
- thumb_func_start ItemLantern
-ItemLantern: @ 0x080759F4
- push {lr}
- ldr r3, _08075A08 @ =gUnk_0811BD68
- ldrb r2, [r0, #4]
- lsls r2, r2, #2
- adds r2, r2, r3
- ldr r2, [r2]
- bl _call_via_r2
- pop {pc}
- .align 2, 0
-_08075A08: .4byte gUnk_0811BD68
-
- thumb_func_start sub_08075A0C
-sub_08075A0C: @ 0x08075A0C
- push {r4, r5, r6, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- ldrb r0, [r4, #1]
- bl IsItemEquipped
- adds r6, r0, #0
- ldr r1, _08075A64 @ =gPlayerState
- ldrb r0, [r1, #5]
- cmp r0, #0
- bne _08075A3E
- ldrb r0, [r1, #0xc]
- cmp r0, #0x18
- beq _08075A3E
- ldrb r0, [r1, #2]
- cmp r0, #0
- bne _08075A3E
- ldr r0, [r1, #0x2c]
- cmp r0, #0
- bne _08075A3E
- ldr r0, [r1, #0x30]
- movs r1, #0x80
- ands r0, r1
- cmp r0, #0
- beq _08075A6C
-_08075A3E:
- movs r0, #0xf
- adds r1, r6, #0
- bl ForceEquipItem
- ldr r0, _08075A64 @ =gPlayerState
- ldr r1, [r0, #0x30]
- ldr r2, _08075A68 @ =0xFF7FFFFF
- ands r1, r2
- str r1, [r0, #0x30]
- movs r0, #0xf
- adds r1, r6, #0
- bl ForceEquipItem
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08077E78
- b _08075AD0
- .align 2, 0
-_08075A64: .4byte gPlayerState
-_08075A68: .4byte 0xFF7FFFFF
-_08075A6C:
- ldrb r1, [r4, #9]
- movs r0, #0x80
- orrs r0, r1
- strb r0, [r4, #9]
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08077D38
- adds r0, r4, #0
- bl sub_08077BD4
- ldr r5, _08075AD4 @ =gPlayerEntity
- adds r0, r5, #0
- bl sub_0806F948
- movs r0, #0x10
- strb r0, [r4, #1]
- adds r1, r6, #0
- bl ForceEquipItem
- ldrb r1, [r5, #0x14]
- movs r0, #6
- ands r0, r1
- ldr r1, _08075AD8 @ =gUnk_08126EEC
- adds r4, r0, r1
- adds r0, r5, #0
- movs r1, #0x45
- movs r2, #1
- movs r3, #0
- bl CreateObjectWithParent
- adds r2, r0, #0
- cmp r2, #0
- beq _08075AD0
- adds r0, r5, #0
- adds r0, #0x60
- ldrh r1, [r0]
- adds r0, r2, #0
- adds r0, #0x60
- strh r1, [r0]
- movs r0, #0
- ldrsb r0, [r4, r0]
- ldrh r1, [r2, #0x2e]
- adds r0, r0, r1
- strh r0, [r2, #0x2e]
- movs r0, #1
- ldrsb r0, [r4, r0]
- ldrh r1, [r2, #0x32]
- adds r0, r0, r1
- strh r0, [r2, #0x32]
-_08075AD0:
- pop {r4, r5, r6, pc}
- .align 2, 0
-_08075AD4: .4byte gPlayerEntity
-_08075AD8: .4byte gUnk_08126EEC
-
- thumb_func_start sub_08075ADC
-sub_08075ADC: @ 0x08075ADC
- push {r4, r5, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- ldr r2, _08075B44 @ =gPlayerState
- ldr r0, [r2, #0x2c]
- cmp r0, #0
- bne _08075B08
- ldrb r1, [r4, #0xe]
- movs r0, #1
- ands r0, r1
- cmp r0, #0
- beq _08075B08
- ldr r0, [r2, #0x30]
- movs r1, #0x88
- lsls r1, r1, #1
- ands r0, r1
- cmp r0, #0
- bne _08075B08
- bl sub_08079D48
- cmp r0, #0
- bne _08075B4C
-_08075B08:
- movs r0, #0
- strb r0, [r4, #0xf]
- ldrb r0, [r4, #4]
- adds r0, #1
- strb r0, [r4, #4]
- ldr r3, _08075B44 @ =gPlayerState
- ldr r0, [r3, #0x30]
- movs r1, #0x80
- lsls r1, r1, #0x10
- orrs r0, r1
- str r0, [r3, #0x30]
- movs r2, #8
- asrs r2, r5
- lsls r1, r2, #4
- orrs r1, r2
- ldrb r0, [r3, #4]
- bics r0, r1
- strb r0, [r3, #4]
- mvns r2, r2
- ldrb r1, [r3, #0xa]
- adds r0, r2, #0
- ands r0, r1
- strb r0, [r3, #0xa]
- ldrb r0, [r3, #0xb]
- ands r2, r0
- strb r2, [r3, #0xb]
- ldr r0, _08075B48 @ =0x0000013D
- bl SoundReq
- b _08075B52
- .align 2, 0
-_08075B44: .4byte gPlayerState
-_08075B48: .4byte 0x0000013D
-_08075B4C:
- adds r0, r4, #0
- bl UpdateItemAnim
-_08075B52:
- pop {r4, r5, pc}
-
- thumb_func_start sub_08075B54
-sub_08075B54: @ 0x08075B54
- push {r4, r5, r6, r7, lr}
- mov r7, sb
- mov r6, r8
- push {r6, r7}
- adds r6, r0, #0
- mov sb, r1
- ldr r5, _08075BB0 @ =gPlayerState
- ldr r0, [r5, #0x30]
- movs r1, #0x88
- lsls r1, r1, #1
- ands r0, r1
- cmp r0, #0
- beq _08075B70
- b _08075C80
-_08075B70:
- ldrb r0, [r6, #1]
- bl IsItemEquipped
- adds r4, r0, #0
- adds r0, r6, #0
- bl sub_08077F10
- cmp r0, #0
- bne _08075B86
- cmp r4, #1
- bls _08075BB8
-_08075B86:
- ldrb r0, [r5, #2]
- cmp r0, #0
- bne _08075BB8
- movs r0, #0xf
- adds r1, r4, #0
- bl ForceEquipItem
- ldr r0, [r5, #0x30]
- ldr r1, _08075BB4 @ =0xFF7FFFFF
- ands r0, r1
- str r0, [r5, #0x30]
- adds r0, r6, #0
- mov r1, sb
- bl sub_08077E78
- movs r0, #0x9f
- lsls r0, r0, #1
- bl SoundReq
- b _08075C80
- .align 2, 0
-_08075BB0: .4byte gPlayerState
-_08075BB4: .4byte 0xFF7FFFFF
-_08075BB8:
- ldr r0, _08075C88 @ =gPlayerState
- mov r8, r0
- ldrb r0, [r0, #0xc]
- cmp r0, #0x18
- beq _08075C80
- ldr r5, _08075C8C @ =gPlayerEntity
- ldrb r0, [r5, #0x1e]
- cmp r0, #0x36
- bhi _08075C80
- ldrh r1, [r5, #0x12]
- cmp r1, #6
- bne _08075C80
- ldrb r0, [r5, #0x14]
- ands r1, r0
- ldr r0, _08075C90 @ =gUnk_08126EEC
- adds r7, r1, r0
- mov r1, r8
- ldrb r0, [r1, #2]
- cmp r0, #0
- bne _08075C80
- movs r2, #0x2e
- ldrsh r0, [r5, r2]
- movs r1, #0
- ldrsb r1, [r7, r1]
- adds r0, r0, r1
- ldr r4, _08075C94 @ =gRoomControls
- ldrh r1, [r4, #6]
- subs r0, r0, r1
- asrs r0, r0, #4
- movs r3, #0x3f
- ands r0, r3
- movs r2, #0x32
- ldrsh r1, [r5, r2]
- movs r2, #1
- ldrsb r2, [r7, r2]
- adds r1, r1, r2
- ldrh r2, [r4, #8]
- subs r1, r1, r2
- asrs r1, r1, #4
- ands r1, r3
- lsls r1, r1, #6
- orrs r0, r1
- adds r1, r5, #0
- adds r1, #0x38
- ldrb r1, [r1]
- movs r2, #0x40
- bl sub_080002F0
- cmp r0, #0
- beq _08075C80
- movs r0, #0xf
- strb r0, [r6, #0xf]
- ldrb r0, [r6, #4]
- adds r0, #1
- strb r0, [r6, #4]
- adds r1, r5, #0
- adds r1, #0x7a
- movs r0, #2
- strh r0, [r1]
- adds r0, r5, #0
- movs r1, #0x45
- movs r2, #1
- movs r3, #0
- bl CreateObjectWithParent
- adds r2, r0, #0
- cmp r2, #0
- beq _08075C60
- adds r0, r5, #0
- adds r0, #0x60
- ldrh r1, [r0]
- adds r0, r2, #0
- adds r0, #0x60
- strh r1, [r0]
- movs r0, #0
- ldrsb r0, [r7, r0]
- ldrh r1, [r2, #0x2e]
- adds r0, r0, r1
- strh r0, [r2, #0x2e]
- movs r0, #1
- ldrsb r0, [r7, r0]
- ldrh r1, [r2, #0x32]
- adds r0, r0, r1
- strh r0, [r2, #0x32]
-_08075C60:
- ldr r1, _08075C98 @ =0x0000060C
- adds r0, r6, #0
- bl sub_08077DF4
- movs r1, #8
- mov r2, sb
- asrs r1, r2
- mov r0, r8
- ldrb r2, [r0, #0xa]
- adds r0, r1, #0
- orrs r0, r2
- mov r2, r8
- strb r0, [r2, #0xa]
- ldrb r0, [r2, #0xb]
- orrs r1, r0
- strb r1, [r2, #0xb]
-_08075C80:
- pop {r3, r4}
- mov r8, r3
- mov sb, r4
- pop {r4, r5, r6, r7, pc}
- .align 2, 0
-_08075C88: .4byte gPlayerState
-_08075C8C: .4byte gPlayerEntity
-_08075C90: .4byte gUnk_08126EEC
-_08075C94: .4byte gRoomControls
-_08075C98: .4byte 0x0000060C
-
- thumb_func_start sub_08075C9C
-sub_08075C9C: @ 0x08075C9C
- push {r4, r5, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- bl UpdateItemAnim
- ldrb r1, [r4, #0xe]
- movs r0, #0x10
- ands r0, r1
- cmp r0, #0
- beq _08075CCA
- ldr r0, _08075CF8 @ =gPlayerEntity
- ldrb r1, [r0, #0x14]
- movs r2, #6
- ands r2, r1
- ldr r1, _08075CFC @ =gUnk_08126EEC
- adds r2, r2, r1
- movs r1, #0
- ldrsb r1, [r2, r1]
- ldrb r2, [r2, #1]
- lsls r2, r2, #0x18
- asrs r2, r2, #0x18
- bl sub_0807AB44
-_08075CCA:
- ldrb r1, [r4, #0xe]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- beq _08075D04
- movs r0, #0
- strb r0, [r4, #0xf]
- ldrb r0, [r4, #4]
- subs r0, #1
- strb r0, [r4, #4]
- ldr r2, _08075D00 @ =gPlayerState
- movs r1, #8
- asrs r1, r5
- mvns r1, r1
- ldrb r3, [r2, #0xa]
- adds r0, r1, #0
- ands r0, r3
- strb r0, [r2, #0xa]
- ldrb r0, [r2, #0xb]
- ands r1, r0
- strb r1, [r2, #0xb]
- b _08075D0E
- .align 2, 0
-_08075CF8: .4byte gPlayerEntity
-_08075CFC: .4byte gUnk_08126EEC
-_08075D00: .4byte gPlayerState
-_08075D04:
- ldr r1, _08075D10 @ =gPlayerEntity
- adds r1, #0x7a
- ldrh r0, [r1]
- adds r0, #1
- strh r0, [r1]
-_08075D0E:
- pop {r4, r5, pc}
- .align 2, 0
-_08075D10: .4byte gPlayerEntity
-
- thumb_func_start ItemBoomerang
-ItemBoomerang: @ 0x08075D14
- push {lr}
- ldr r3, _08075D28 @ =gUnk_0811BD78
- ldrb r2, [r0, #4]
- lsls r2, r2, #2
- adds r2, r2, r3
- ldr r2, [r2]
- bl _call_via_r2
- pop {pc}
- .align 2, 0
-_08075D28: .4byte gUnk_0811BD78
-
- thumb_func_start sub_08075D2C
-sub_08075D2C: @ 0x08075D2C
- push {r4, r5, r6, lr}
- adds r4, r0, #0
- adds r6, r1, #0
- ldr r5, _08075D74 @ =gPlayerState
- ldrb r1, [r5, #4]
- movs r0, #8
- ands r0, r1
- cmp r0, #0
- bne _08075D7C
- ldrb r1, [r4, #1]
- adds r0, r4, #0
- bl sub_08077C94
- cmp r0, #0
- bne _08075D7C
- ldrb r1, [r4, #9]
- movs r0, #0xf
- orrs r0, r1
- strb r0, [r4, #9]
- ldr r0, _08075D78 @ =gPlayerEntity
- bl sub_0806F948
- adds r0, r4, #0
- movs r1, #0xb
- bl sub_08077C0C
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_08077D38
- ldrb r1, [r5, #4]
- movs r0, #8
- orrs r0, r1
- strb r0, [r5, #4]
- b _08075D84
- .align 2, 0
-_08075D74: .4byte gPlayerState
-_08075D78: .4byte gPlayerEntity
-_08075D7C:
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_08077E78
-_08075D84:
- pop {r4, r5, r6, pc}
- .align 2, 0
-
- thumb_func_start sub_08075D88
-sub_08075D88: @ 0x08075D88
- push {r4, r5, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- ldr r2, _08075DBC @ =gPlayerState
- ldrb r1, [r2, #4]
- movs r3, #0x80
- adds r0, r3, #0
- ands r0, r1
- cmp r0, #0
- bne _08075DD0
- ldrb r0, [r4, #1]
- cmp r0, #0xc
- bne _08075DC0
- ldrb r1, [r2, #0xa]
- adds r0, r3, #0
- ands r0, r1
- cmp r0, #0
- beq _08075DC0
- ldrb r1, [r4, #0xe]
- movs r0, #2
- ands r0, r1
- cmp r0, #0
- beq _08075DC0
- bl sub_08078F60
- b _08075DD8
- .align 2, 0
-_08075DBC: .4byte gPlayerState
-_08075DC0:
- adds r0, r4, #0
- bl UpdateItemAnim
- ldrb r1, [r4, #0xe]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- beq _08075DD8
-_08075DD0:
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08077E78
-_08075DD8:
- pop {r4, r5, pc}
- .align 2, 0
-
- thumb_func_start ItemBow
-ItemBow: @ 0x08075DDC
- push {lr}
- ldr r3, _08075DF0 @ =gUnk_0811BD80
- ldrb r2, [r0, #4]
- lsls r2, r2, #2
- adds r2, r2, r3
- ldr r2, [r2]
- bl _call_via_r2
- pop {pc}
- .align 2, 0
-_08075DF0: .4byte gUnk_0811BD80
-
- thumb_func_start sub_08075DF4
-sub_08075DF4: @ 0x08075DF4
- push {r4, r5, r6, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- ldr r6, _08075E2C @ =gPlayerState
- ldrb r1, [r6, #4]
- movs r0, #8
- ands r0, r1
- cmp r0, #0
- bne _08075E34
- ldrb r1, [r4, #9]
- movs r0, #0x80
- orrs r0, r1
- strb r0, [r4, #9]
- ldr r0, _08075E30 @ =gPlayerEntity
- bl sub_0806F948
- adds r0, r4, #0
- bl sub_08077BB8
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08077D38
- adds r1, r6, #0
- adds r1, #0x21
- movs r0, #1
- strb r0, [r1]
- b _08075E3C
- .align 2, 0
-_08075E2C: .4byte gPlayerState
-_08075E30: .4byte gPlayerEntity
-_08075E34:
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08077E78
-_08075E3C:
- pop {r4, r5, r6, pc}
- .align 2, 0
-
- thumb_func_start sub_08075E40
-sub_08075E40: @ 0x08075E40
- push {r4, r5, r6, r7, lr}
- mov r7, r8
- push {r7}
- adds r4, r0, #0
- mov r8, r1
- ldr r0, _08075EA0 @ =gPlayerState
- adds r1, r0, #0
- adds r1, #0x21
- ldrb r1, [r1]
- adds r6, r0, #0
- cmp r1, #0
- beq _08075EA8
- ldrb r1, [r6, #4]
- movs r5, #0x80
- adds r0, r5, #0
- ands r0, r1
- lsls r0, r0, #0x18
- lsrs r7, r0, #0x18
- cmp r7, #0
- bne _08075EA8
- adds r0, r4, #0
- bl UpdateItemAnim
- ldrb r1, [r4, #0xe]
- adds r0, r5, #0
- ands r0, r1
- cmp r0, #0
- beq _08075EB8
- movs r0, #2
- strb r0, [r4, #4]
- ldrb r1, [r4, #9]
- movs r0, #0x7f
- ands r0, r1
- strb r0, [r4, #9]
- ldr r0, _08075EA4 @ =gSave
- adds r0, #0xad
- ldrb r0, [r0]
- cmp r0, #0
- beq _08075EB8
- strb r7, [r4, #0xf]
- movs r1, #8
- mov r0, r8
- asrs r1, r0
- ldrb r0, [r6, #0xa]
- bics r0, r1
- strb r0, [r6, #0xa]
- b _08075EB8
- .align 2, 0
-_08075EA0: .4byte gPlayerState
-_08075EA4: .4byte gSave
-_08075EA8:
- adds r1, r6, #0
- adds r1, #0x21
- movs r0, #0
- strb r0, [r1]
- adds r0, r4, #0
- mov r1, r8
- bl sub_08077E78
-_08075EB8:
- pop {r3}
- mov r8, r3
- pop {r4, r5, r6, r7, pc}
- .align 2, 0
-
- thumb_func_start sub_08075EC0
-sub_08075EC0: @ 0x08075EC0
- push {r4, r5, r6, lr}
- adds r4, r0, #0
- adds r6, r1, #0
- ldr r0, _08075F04 @ =gSave
- adds r0, #0xad
- ldrb r5, [r0]
- adds r0, r4, #0
- bl sub_08077EFC
- cmp r0, #0
- beq _08075F0C
- cmp r5, #0
- beq _08075F0C
- ldr r2, _08075F08 @ =gPlayerState
- ldrb r1, [r2, #4]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- bne _08075EF0
- adds r0, r2, #0
- adds r0, #0x21
- ldrb r0, [r0]
- cmp r0, #0
- bne _08075F32
-_08075EF0:
- adds r1, r2, #0
- adds r1, #0x21
- movs r0, #0
- strb r0, [r1]
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_08077E78
- b _08075F32
- .align 2, 0
-_08075F04: .4byte gSave
-_08075F08: .4byte gPlayerState
-_08075F0C:
- ldr r2, _08075F34 @ =gPlayerState
- movs r0, #8
- asrs r0, r6
- ldrb r1, [r2, #0xa]
- orrs r0, r1
- strb r0, [r2, #0xa]
- movs r1, #0x9f
- lsls r1, r1, #2
- adds r0, r4, #0
- bl sub_08077DF4
- movs r1, #0xf
- movs r0, #0xf
- strb r0, [r4, #0xf]
- ldrb r0, [r4, #9]
- orrs r1, r0
- strb r1, [r4, #9]
- movs r0, #3
- strb r0, [r4, #4]
-_08075F32:
- pop {r4, r5, r6, pc}
- .align 2, 0
-_08075F34: .4byte gPlayerState
-
- thumb_func_start sub_08075F38
-sub_08075F38: @ 0x08075F38
- push {r4, lr}
- adds r4, r0, #0
- adds r3, r1, #0
- ldr r2, _08075F6C @ =gPlayerState
- ldrb r1, [r2, #4]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- bne _08075F70
- adds r0, r2, #0
- adds r0, #0x21
- ldrb r0, [r0]
- cmp r0, #0
- beq _08075F70
- adds r0, r4, #0
- bl UpdateItemAnim
- ldrb r1, [r4, #0xe]
- movs r0, #1
- ands r0, r1
- cmp r0, #0
- beq _08075F80
- movs r0, #4
- strb r0, [r4, #4]
- b _08075F80
- .align 2, 0
-_08075F6C: .4byte gPlayerState
-_08075F70:
- adds r1, r2, #0
- adds r1, #0x21
- movs r0, #0
- strb r0, [r1]
- adds r0, r4, #0
- adds r1, r3, #0
- bl sub_08077E78
-_08075F80:
- pop {r4, pc}
- .align 2, 0
-
- thumb_func_start sub_08075F84
-sub_08075F84: @ 0x08075F84
- push {r4, r5, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- ldr r2, _08075FB4 @ =gPlayerState
- ldrb r1, [r2, #4]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- bne _08075FC8
- adds r0, r2, #0
- adds r0, #0x21
- ldrb r0, [r0]
- cmp r0, #0
- beq _08075FC8
- movs r0, #0x70
- bl GetInventoryValue
- cmp r0, #1
- bne _08075FB8
- adds r0, r4, #0
- movs r1, #5
- bl sub_08077E3C
- b _08075FBE
- .align 2, 0
-_08075FB4: .4byte gPlayerState
-_08075FB8:
- adds r0, r4, #0
- bl UpdateItemAnim
-_08075FBE:
- ldrb r1, [r4, #0xe]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- beq _08075FD8
-_08075FC8:
- ldr r0, _08075FDC @ =gPlayerState
- adds r0, #0x21
- movs r1, #0
- strb r1, [r0]
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08077E78
-_08075FD8:
- pop {r4, r5, pc}
- .align 2, 0
-_08075FDC: .4byte gPlayerState
-
- thumb_func_start ItemBomb
-ItemBomb: @ 0x08075FE0
- push {lr}
- ldr r3, _08075FF4 @ =gUnk_0811BD98
- ldrb r2, [r0, #4]
- lsls r2, r2, #2
- adds r2, r2, r3
- ldr r2, [r2]
- bl _call_via_r2
- pop {pc}
- .align 2, 0
-_08075FF4: .4byte gUnk_0811BD98
-
- thumb_func_start sub_08075FF8
-sub_08075FF8: @ 0x08075FF8
- push {r4, r5, r6, r7, lr}
- adds r6, r0, #0
- adds r7, r1, #0
- ldr r0, _08076018 @ =gPlayerState
- ldrb r1, [r0, #2]
- ldrb r0, [r0, #4]
- orrs r0, r1
- cmp r0, #0
- bne _08076076
- movs r5, #0
- movs r0, #8
- movs r1, #2
- movs r2, #2
- bl FindEntityByID
- b _08076026
- .align 2, 0
-_08076018: .4byte gPlayerState
-_0807601C:
- adds r5, #1
- adds r0, r4, #0
- movs r1, #2
- bl FindNextDuplicateID
-_08076026:
- adds r4, r0, #0
- cmp r4, #0
- bne _0807601C
- ldrb r0, [r6, #1]
- movs r1, #1
- cmp r0, #7
- bne _08076036
- movs r1, #3
-_08076036:
- cmp r1, r5
- bls _08076076
- adds r0, r6, #0
- movs r1, #2
- bl CreatePlayerBomb
- adds r4, r0, #0
- cmp r4, #0
- beq _08076076
- ldr r0, _08076080 @ =gPlayerEntity
- ldrb r2, [r0, #0x14]
- movs r1, #6
- ands r1, r2
- ldr r2, _08076084 @ =gUnk_0811BDAC
- adds r1, r1, r2
- movs r2, #0
- ldrsb r2, [r1, r2]
- lsls r2, r2, #0x10
- movs r3, #1
- ldrsb r3, [r1, r3]
- lsls r3, r3, #0x10
- adds r1, r4, #0
- bl PositionRelative
- movs r0, #1
- rsbs r0, r0, #0
- bl ModBombs
- movs r0, #0x82
- lsls r0, r0, #1
- bl SoundReq
-_08076076:
- adds r0, r6, #0
- adds r1, r7, #0
- bl sub_08077E78
- pop {r4, r5, r6, r7, pc}
- .align 2, 0
-_08076080: .4byte gPlayerEntity
-_08076084: .4byte gUnk_0811BDAC
-
- thumb_func_start sub_08076088
-sub_08076088: @ 0x08076088
- push {r4, r5, r6, r7, lr}
- mov r7, r8
- push {r7}
- adds r4, r0, #0
- adds r3, r1, #0
- adds r5, r2, #0
- cmp r3, #0
- beq _080760AA
- ldrb r0, [r3, #0x16]
- movs r1, #1
- ands r1, r0
- cmp r1, #0
- beq _080760A4
- b _080761A0
-_080760A4:
- movs r0, #2
- strb r0, [r3, #0xc]
- strb r1, [r3, #0xd]
-_080760AA:
- str r3, [r4, #0x18]
- ldr r0, _080760C4 @ =gPlayerState
- ldr r0, [r0, #0x30]
- movs r1, #8
- ands r0, r1
- cmp r0, #0
- beq _080760CC
- ldr r1, _080760C8 @ =0x00000928
- adds r0, r4, #0
- bl sub_08077DF4
- b _080760D6
- .align 2, 0
-_080760C4: .4byte gPlayerState
-_080760C8: .4byte 0x00000928
-_080760CC:
- movs r1, #0xce
- lsls r1, r1, #2
- adds r0, r4, #0
- bl sub_08077DF4
-_080760D6:
- ldr r3, _08076130 @ =gPlayerState
- movs r0, #0
- mov r8, r0
- movs r7, #3
- strb r7, [r3, #5]
- adds r0, r3, #0
- adds r0, #0xa8
- movs r6, #4
- strb r6, [r0]
- movs r0, #2
- strb r0, [r4, #4]
- movs r0, #0xf
- strb r0, [r4, #0xf]
- ldr r2, _08076134 @ =gPlayerEntity
- movs r1, #0x79
- adds r1, r1, r2
- mov ip, r1
- ldrb r1, [r1]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- beq _08076138
- mov r1, r8
- mov r0, ip
- strb r1, [r0]
- ldrb r0, [r2, #0x10]
- movs r1, #0x80
- orrs r0, r1
- strb r0, [r2, #0x10]
- strb r6, [r3, #5]
- movs r1, #8
- asrs r1, r5
- mvns r1, r1
- ldrb r2, [r3, #0xb]
- adds r0, r1, #0
- ands r0, r2
- strb r0, [r3, #0xb]
- ldrb r0, [r3, #0xa]
- ands r1, r0
- strb r1, [r3, #0xa]
- strb r7, [r4, #4]
- mov r0, r8
- strb r0, [r4, #0xf]
- b _0807614A
- .align 2, 0
-_08076130: .4byte gPlayerState
-_08076134: .4byte gPlayerEntity
-_08076138:
- movs r1, #8
- asrs r1, r5
- ldrb r2, [r3, #0xa]
- adds r0, r1, #0
- orrs r0, r2
- strb r0, [r3, #0xa]
- ldrb r0, [r3, #0xb]
- orrs r1, r0
- strb r1, [r3, #0xb]
-_0807614A:
- adds r0, r4, #0
- movs r1, #0x13
- bl CreatePlayerBomb
- adds r3, r0, #0
- cmp r3, #0
- bne _08076162
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08077F50
- b _080761A0
-_08076162:
- ldr r1, _08076194 @ =gPlayerEntity
- str r3, [r1, #0x74]
- movs r2, #0
- strb r2, [r1, #0xf]
- ldr r0, [r4, #0x18]
- str r0, [r3, #0x54]
- ldrb r0, [r1, #0x16]
- strb r0, [r3, #0x16]
- str r4, [r3, #0x50]
- str r3, [r4, #0x18]
- ldrb r0, [r4, #3]
- strb r0, [r3, #0xb]
- ldrb r0, [r4, #7]
- strb r0, [r3, #0xe]
- ldrb r0, [r4, #8]
- strb r0, [r3, #0xf]
- ldr r0, [r4, #0x18]
- ldrb r1, [r0, #0x16]
- movs r0, #0xf0
- ands r0, r1
- cmp r0, #0x10
- bne _08076198
- movs r0, #8
- strb r0, [r4, #7]
- b _0807619A
- .align 2, 0
-_08076194: .4byte gPlayerEntity
-_08076198:
- strb r2, [r4, #7]
-_0807619A:
- movs r0, #0x7f
- bl SoundReq
-_080761A0:
- pop {r3}
- mov r8, r3
- pop {r4, r5, r6, r7, pc}
- .align 2, 0
-
- thumb_func_start ItemTryPickupObject
-ItemTryPickupObject: @ 0x080761A8
- push {lr}
- ldr r3, _080761BC @ =gUnk_0811BDB4
- ldrb r2, [r0, #4]
- lsls r2, r2, #2
- adds r2, r2, r3
- ldr r2, [r2]
- bl _call_via_r2
- pop {pc}
- .align 2, 0
-_080761BC: .4byte gUnk_0811BDB4
-
- thumb_func_start sub_080761C0
-sub_080761C0: @ 0x080761C0
- push {r4, r5, r6, lr}
- adds r4, r0, #0
- adds r6, r1, #0
- ldr r5, _08076220 @ =gPlayerState
- ldrb r0, [r5, #4]
- cmp r0, #0
- bne _080762B8
- ldrb r0, [r5, #2]
- cmp r0, #0
- beq _080761DE
- ldr r0, [r5, #0x30]
- ldr r1, _08076224 @ =0x00001201
- ands r0, r1
- cmp r0, #0
- beq _080762B8
-_080761DE:
- ldr r1, _08076228 @ =gPlayerEntity
- ldrb r2, [r1, #0x14]
- movs r0, #0x80
- orrs r0, r2
- strb r0, [r5, #1]
- adds r1, #0x3d
- movs r0, #0
- ldrsb r0, [r1, r0]
- cmp r0, #8
- bgt _080762B8
- bl sub_080789A8
- adds r3, r0, #0
- cmp r3, #1
- beq _08076258
- cmp r3, #1
- blo _0807626E
- cmp r3, #2
- bne _080762C0
- ldr r0, _0807622C @ =gUnk_03003BE0
- ldr r2, [r0, #8]
- ldrb r1, [r2, #0x16]
- movs r0, #0xf
- ands r0, r1
- cmp r0, #0
- bne _08076230
- adds r0, r4, #0
- adds r1, r2, #0
- adds r2, r6, #0
- bl sub_08076088
- b _080762C0
- .align 2, 0
-_08076220: .4byte gPlayerState
-_08076224: .4byte 0x00001201
-_08076228: .4byte gPlayerEntity
-_0807622C: .4byte gUnk_03003BE0
-_08076230:
- str r2, [r4, #0x18]
- strb r3, [r2, #0xc]
- movs r1, #5
- strb r1, [r2, #0xd]
- adds r0, r5, #0
- adds r0, #0xa8
- strb r1, [r0]
- adds r0, r4, #0
- adds r1, r2, #0
- movs r2, #2
- adds r3, r6, #0
- bl sub_080762C4
- ldr r0, _08076254 @ =gUnk_0200AF00
- adds r0, #0x2e
- movs r1, #8
- strb r1, [r0]
- b _08076264
- .align 2, 0
-_08076254: .4byte gUnk_0200AF00
-_08076258:
- adds r0, r4, #0
- movs r1, #0
- movs r2, #1
- adds r3, r6, #0
- bl sub_080762C4
-_08076264:
- movs r0, #0x81
- lsls r0, r0, #1
- bl SoundReq
- b _080762C0
-_0807626E:
- movs r0, #5
- strb r0, [r4, #4]
- movs r0, #0xf
- strb r0, [r4, #7]
- movs r0, #6
- strb r0, [r4, #0xf]
- movs r3, #8
- adds r1, r3, #0
- asrs r1, r6
- ldrb r2, [r5, #0xa]
- adds r0, r1, #0
- orrs r0, r2
- strb r0, [r5, #0xa]
- ldrb r0, [r5, #0xb]
- orrs r1, r0
- strb r1, [r5, #0xb]
- ldr r0, [r5, #0x30]
- ands r0, r3
- cmp r0, #0
- bne _080762A2
- movs r1, #0xde
- lsls r1, r1, #2
- adds r0, r4, #0
- bl sub_08077DF4
- b _080762AA
-_080762A2:
- ldr r1, _080762B4 @ =0x00000948
- adds r0, r4, #0
- bl sub_08077DF4
-_080762AA:
- movs r0, #0x88
- bl SoundReq
- b _080762C0
- .align 2, 0
-_080762B4: .4byte 0x00000948
-_080762B8:
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_08077F50
-_080762C0:
- pop {r4, r5, r6, pc}
- .align 2, 0
-
- thumb_func_start sub_080762C4
-sub_080762C4: @ 0x080762C4
- push {lr}
- str r1, [r0, #0x18]
- ldr r1, _080762D4 @ =gPlayerState
- strb r2, [r1, #5]
- adds r1, r3, #0
- bl sub_08077D38
- pop {pc}
- .align 2, 0
-_080762D4: .4byte gPlayerState
-
- thumb_func_start sub_080762D8
-sub_080762D8: @ 0x080762D8
- push {r4, r5, r6, r7, lr}
- adds r5, r0, #0
- adds r6, r1, #0
- ldr r4, _08076334 @ =gPlayerState
- ldrb r0, [r4, #5]
- movs r1, #0xcf
- ands r1, r0
- strb r1, [r4, #5]
- adds r0, r5, #0
- adds r1, r6, #0
- bl sub_08077F64
- cmp r0, #0
- bne _080762F6
- b _08076486
-_080762F6:
- ldr r0, _08076338 @ =gPlayerEntity
- adds r1, r0, #0
- adds r1, #0x3d
- ldrb r1, [r1]
- lsls r1, r1, #0x18
- asrs r1, r1, #0x18
- adds r3, r0, #0
- cmp r1, #8
- bgt _0807636C
- adds r0, #0x42
- ldrb r0, [r0]
- cmp r0, #0
- bne _0807636C
- ldr r2, [r5, #0x18]
- cmp r2, #0
- beq _08076340
- ldrh r1, [r2, #0xc]
- ldr r0, _0807633C @ =0x00000502
- cmp r1, r0
- bne _08076376
- adds r0, r4, #0
- adds r0, #0x90
- ldrh r1, [r0]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- bne _08076340
- movs r0, #6
- strb r0, [r2, #0xd]
- b _08076376
- .align 2, 0
-_08076334: .4byte gPlayerState
-_08076338: .4byte gPlayerEntity
-_0807633C: .4byte 0x00000502
-_08076340:
- ldr r2, _08076364 @ =gPlayerState
- adds r1, r2, #0
- adds r1, #0xa8
- movs r0, #5
- strb r0, [r1]
- ldr r0, _08076368 @ =gUnk_0200AF00
- adds r0, #0x2e
- movs r1, #8
- strb r1, [r0]
- ldrb r0, [r2, #2]
- cmp r0, #0
- beq _0807635A
- b _0807647E
-_0807635A:
- ldrb r0, [r2, #5]
- cmp r0, #1
- bne _08076394
- b _08076380
- .align 2, 0
-_08076364: .4byte gPlayerState
-_08076368: .4byte gUnk_0200AF00
-_0807636C:
- ldr r1, [r5, #0x18]
- cmp r1, #0
- beq _08076376
- movs r0, #6
- strb r0, [r1, #0xd]
-_08076376:
- adds r0, r5, #0
- adds r1, r6, #0
- bl sub_08077F50
- b _08076486
-_08076380:
- adds r0, r3, #0
- movs r1, #6
- adds r2, r5, #0
- bl sub_0800875A
- cmp r0, #0
- beq _08076394
- adds r0, r5, #0
- movs r1, #0
- b _080763EC
-_08076394:
- ldr r1, _080763F4 @ =gUnk_0811BE38
- ldr r7, _080763F8 @ =gPlayerEntity
- ldrb r0, [r7, #0x14]
- lsrs r0, r0, #1
- lsls r3, r0, #1
- adds r1, r3, r1
- ldr r4, _080763FC @ =gPlayerState
- adds r2, r4, #0
- adds r2, #0x90
- ldrh r0, [r1]
- ldrh r2, [r2]
- ands r0, r2
- cmp r0, #0
- beq _08076400
- adds r0, r5, #0
- bl UpdateItemAnim
- ldr r0, [r4, #0x30]
- movs r1, #8
- ands r0, r1
- movs r1, #0x94
- lsls r1, r1, #4
- cmp r0, #0
- bne _080763C8
- movs r1, #0xd0
- lsls r1, r1, #2
-_080763C8:
- ldrh r0, [r5, #0x10]
- cmp r1, r0
- beq _080763D4
- adds r0, r5, #0
- bl sub_08077DF4
-_080763D4:
- ldrb r0, [r4, #5]
- movs r1, #0x10
- orrs r1, r0
- strb r1, [r4, #5]
- adds r2, r4, #0
- adds r2, #0xa8
- movs r0, #0x1a
- strb r0, [r2]
- cmp r1, #1
- beq _08076486
- ldr r1, [r5, #0x18]
- adds r0, r5, #0
-_080763EC:
- adds r2, r6, #0
- bl sub_08076088
- b _08076486
- .align 2, 0
-_080763F4: .4byte gUnk_0811BE38
-_080763F8: .4byte gPlayerEntity
-_080763FC: .4byte gPlayerState
-_08076400:
- ldr r0, _08076418 @ =gUnk_0811BE40
- adds r0, r3, r0
- ldrh r0, [r0]
- ands r0, r2
- cmp r0, #0
- beq _08076460
- ldrb r0, [r7, #0xf]
- cmp r0, #5
- bhi _0807641C
- adds r0, #1
- strb r0, [r7, #0xf]
- b _08076486
- .align 2, 0
-_08076418: .4byte gUnk_0811BE40
-_0807641C:
- ldrb r0, [r5, #0xa]
- adds r1, r4, #0
- adds r1, #0x35
- strb r0, [r1]
- ldrb r0, [r4, #6]
- movs r1, #0x80
- orrs r0, r1
- strb r0, [r4, #6]
- ldrb r1, [r4, #5]
- movs r0, #0x20
- orrs r0, r1
- strb r0, [r4, #5]
- adds r1, r4, #0
- adds r1, #0xa8
- movs r0, #0x19
- strb r0, [r1]
- ldr r0, [r4, #0x30]
- movs r1, #8
- ands r0, r1
- ldr r1, _0807645C @ =0x0000093C
- cmp r0, #0
- bne _0807644C
- movs r1, #0xcf
- lsls r1, r1, #2
-_0807644C:
- ldrh r0, [r5, #0x10]
- cmp r1, r0
- bne _08076476
- adds r0, r5, #0
- bl UpdateItemAnim
- b _08076486
- .align 2, 0
-_0807645C: .4byte 0x0000093C
-_08076460:
- strb r0, [r7, #0xf]
- ldr r0, [r4, #0x30]
- movs r1, #8
- ands r0, r1
- cmp r0, #0
- bne _08076472
- movs r1, #0xd0
- lsls r1, r1, #2
- b _08076476
-_08076472:
- movs r1, #0x94
- lsls r1, r1, #4
-_08076476:
- adds r0, r5, #0
- bl sub_08077DF4
- b _08076486
-_0807647E:
- adds r0, r5, #0
- adds r1, r6, #0
- bl sub_08077F50
-_08076486:
- pop {r4, r5, r6, r7, pc}
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
- thumb_func_start sub_08076488
-sub_08076488: @ 0x08076488
- push {r4, r5, r6, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- ldrb r0, [r4, #7]
- adds r6, r0, #0
- cmp r6, #0
- bne _08076504
- adds r0, r4, #0
- bl sub_08077F64
- cmp r0, #0
- beq _08076508
- ldr r0, [r4, #0x18]
- ldrb r1, [r0, #0x16]
- movs r0, #0xf0
- ands r0, r1
- cmp r0, #0x10
- bne _080764B8
- ldr r0, _080764F8 @ =gScreenTransition
- ldr r0, [r0]
- movs r1, #1
- ands r0, r1
- cmp r0, #0
- bne _08076510
-_080764B8:
- adds r0, r4, #0
- bl UpdateItemAnim
- ldrb r1, [r4, #0xe]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- beq _08076508
- ldr r2, _080764FC @ =gPlayerEntity
- ldrb r1, [r2, #0x10]
- movs r0, #0x80
- orrs r0, r1
- strb r0, [r2, #0x10]
- ldr r2, _08076500 @ =gPlayerState
- movs r0, #4
- strb r0, [r2, #5]
- movs r1, #8
- asrs r1, r5
- mvns r1, r1
- ldrb r3, [r2, #0xb]
- adds r0, r1, #0
- ands r0, r3
- strb r0, [r2, #0xb]
- ldrb r0, [r2, #0xa]
- ands r1, r0
- strb r1, [r2, #0xa]
- ldrb r0, [r4, #4]
- adds r0, #1
- strb r0, [r4, #4]
- strb r6, [r4, #0xf]
- b _08076508
- .align 2, 0
-_080764F8: .4byte gScreenTransition
-_080764FC: .4byte gPlayerEntity
-_08076500: .4byte gPlayerState
-_08076504:
- subs r0, #1
- strb r0, [r4, #7]
-_08076508:
- ldr r0, _08076514 @ =gPlayerState
- adds r0, #0xa8
- movs r1, #4
- strb r1, [r0]
-_08076510:
- pop {r4, r5, r6, pc}
- .align 2, 0
-_08076514: .4byte gPlayerState
-
- thumb_func_start sub_08076518
-sub_08076518: @ 0x08076518
- push {r4, r5, r6, r7, lr}
- mov r7, r8
- push {r7}
- adds r4, r0, #0
- mov r8, r1
- bl sub_08077F64
- cmp r0, #0
- beq _080765D4
- ldr r5, _0807655C @ =gPlayerState
- adds r1, r5, #0
- adds r1, #0xa8
- movs r0, #4
- strb r0, [r1]
- ldrb r1, [r5, #2]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- bne _080765D4
- ldrb r0, [r5, #0x1f]
- cmp r0, #0
- bne _080765D4
- ldr r6, _08076560 @ =gPlayerEntity
- adds r0, r6, #0
- adds r0, #0x42
- ldrb r7, [r0]
- cmp r7, #0
- beq _08076564
- adds r0, r4, #0
- mov r1, r8
- bl sub_08077F50
- b _080765D4
- .align 2, 0
-_0807655C: .4byte gPlayerState
-_08076560: .4byte gPlayerEntity
-_08076564:
- adds r0, r5, #0
- adds r0, #0x92
- ldrh r1, [r0]
- ldr r0, _080765B0 @ =0x00008018
- ands r0, r1
- cmp r0, #0
- beq _080765D4
- adds r0, r6, #0
- bl sub_0806F948
- movs r0, #5
- strb r0, [r5, #5]
- ldr r1, [r4, #0x18]
- movs r0, #2
- strb r0, [r1, #0xd]
- ldr r2, [r4, #0x18]
- ldrb r1, [r6, #0x14]
- movs r0, #0xe
- ands r0, r1
- lsls r0, r0, #2
- strb r0, [r2, #0x15]
- str r7, [r4, #0x18]
- ldrb r0, [r4, #4]
- adds r0, #1
- strb r0, [r4, #4]
- movs r0, #0xf
- strb r0, [r4, #0xf]
- ldr r0, [r5, #0x30]
- movs r1, #8
- ands r0, r1
- cmp r0, #0
- beq _080765B4
- movs r1, #0x93
- lsls r1, r1, #4
- adds r0, r4, #0
- bl sub_08077DF4
- b _080765BE
- .align 2, 0
-_080765B0: .4byte 0x00008018
-_080765B4:
- movs r1, #0xd1
- lsls r1, r1, #2
- adds r0, r4, #0
- bl sub_08077DF4
-_080765BE:
- ldr r2, _080765DC @ =gPlayerState
- movs r1, #8
- mov r0, r8
- asrs r1, r0
- ldrb r3, [r2, #0xa]
- adds r0, r1, #0
- orrs r0, r3
- strb r0, [r2, #0xa]
- ldrb r0, [r2, #0xb]
- orrs r1, r0
- strb r1, [r2, #0xb]
-_080765D4:
- pop {r3}
- mov r8, r3
- pop {r4, r5, r6, r7, pc}
- .align 2, 0
-_080765DC: .4byte gPlayerState
+ @ TODO convert .inc files into .s files and include them in linker.ld
+ .include "asm/item/itemDebug.inc"
- thumb_func_start sub_080765E0
-sub_080765E0: @ 0x080765E0
- push {r4, r5, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- bl sub_08077F64
- cmp r0, #0
- beq _08076608
- ldrb r1, [r4, #0xe]
- movs r0, #0x80
- ands r0, r1
- cmp r0, #0
- beq _08076602
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08077F50
- b _08076608
-_08076602:
- adds r0, r4, #0
- bl UpdateItemAnim
-_08076608:
- pop {r4, r5, pc}
- .align 2, 0
+ .include "asm/item/itemSword.inc"
- thumb_func_start sub_0807660C
-sub_0807660C: @ 0x0807660C
- push {r4, r5, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- bl UpdateItemAnim
- ldrb r0, [r4, #7]
- subs r0, #1
- strb r0, [r4, #7]
- lsls r0, r0, #0x18
- lsrs r0, r0, #0x18
- cmp r0, #0xff
- beq _0807662C
- ldr r0, _0807663C @ =gPlayerState
- ldrb r0, [r0, #1]
- cmp r0, #0
- bne _0807663A
-_0807662C:
- ldr r1, _0807663C @ =gPlayerState
- movs r0, #0
- strb r0, [r1, #1]
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08077E78
-_0807663A:
- pop {r4, r5, pc}
- .align 2, 0
-_0807663C: .4byte gPlayerState
+ .include "asm/item/itemLantern.inc"
- thumb_func_start ItemRocsCape
-ItemRocsCape: @ 0x08076640
- push {r4, r5, lr}
- adds r3, r0, #0
- adds r4, r1, #0
- ldrb r0, [r3, #4]
- cmp r0, #0
- beq _08076654
- adds r0, r3, #0
- bl sub_08076758
- b _08076754
-_08076654:
- ldr r0, _080766BC @ =gPlayerState
- ldr r1, [r0, #0x2c]
- adds r2, r0, #0
- cmp r1, #0
- bne _0807674C
- ldrb r0, [r2, #1]
- cmp r0, #0
- beq _080766C4
- ldrb r1, [r2, #4]
- ldrb r0, [r2, #5]
- orrs r0, r1
- cmp r0, #0
- bne _0807674C
- ldrb r0, [r2, #0x12]
- cmp r0, #0x12
- beq _08076678
- cmp r0, #1
- bne _08076686
-_08076678:
- ldr r0, _080766C0 @ =gPlayerEntity
- ldr r0, [r0, #0x34]
- cmp r0, #0
- bne _08076686
- ldrb r0, [r2, #0x14]
- cmp r0, #0
- beq _0807674C
-_08076686:
- ldrb r1, [r2, #2]
- cmp r1, #0
- beq _08076694
- movs r0, #7
- ands r0, r1
- cmp r0, #3
- bne _08076710
-_08076694:
- ldr r5, _080766C0 @ =gPlayerEntity
- ldr r0, [r5, #0x34]
- cmp r0, #0
- blt _0807674C
- movs r1, #0
- strb r1, [r2, #1]
- ldrb r0, [r3, #4]
- adds r0, #1
- strb r0, [r3, #4]
- strb r1, [r2, #0xb]
- movs r0, #1
- strb r0, [r2, #2]
- movs r0, #0xff
- strb r0, [r2, #0xe]
- str r1, [r2, #0x2c]
- movs r0, #0x80
- lsls r0, r0, #0xa
- str r0, [r5, #0x20]
- b _0807673C
- .align 2, 0
-_080766BC: .4byte gPlayerState
-_080766C0: .4byte gPlayerEntity
-_080766C4:
- ldrb r0, [r2, #0x1b]
- ldrb r1, [r2, #0xa]
- orrs r0, r1
- ldrb r1, [r2, #4]
- orrs r0, r1
- ldrb r1, [r2, #5]
- orrs r0, r1
- ldrb r1, [r2, #0x1c]
- orrs r0, r1
- adds r1, r2, #0
- adds r1, #0x3d
- ldrb r1, [r1]
- orrs r0, r1
- cmp r0, #0
- bne _0807674C
- ldrb r1, [r2, #0x12]
- adds r0, r1, #0
- subs r0, #0x12
- lsls r0, r0, #0x18
- lsrs r0, r0, #0x18
- cmp r0, #1
- bls _080766F4
- cmp r1, #1
- bne _08076702
-_080766F4:
- ldr r0, _0807671C @ =gPlayerEntity
- ldr r0, [r0, #0x34]
- cmp r0, #0
- bne _08076702
- ldrb r0, [r2, #0x14]
- cmp r0, #0
- beq _0807674C
-_08076702:
- ldrb r1, [r2, #2]
- cmp r1, #0
- beq _08076720
- movs r0, #7
- ands r0, r1
- cmp r0, #3
- beq _08076720
-_08076710:
- adds r0, r3, #0
- adds r1, r4, #0
- bl sub_08076758
- b _08076754
- .align 2, 0
-_0807671C: .4byte gPlayerEntity
-_08076720:
- ldr r1, _08076748 @ =gPlayerEntity
- ldr r0, [r1, #0x34]
- cmp r0, #0
- blt _0807674C
- movs r0, #0x80
- lsls r0, r0, #0xa
- str r0, [r1, #0x20]
- movs r1, #0
- movs r0, #1
- strb r0, [r2, #2]
- str r1, [r2, #0x2c]
- ldrb r0, [r3, #4]
- adds r0, #1
- strb r0, [r3, #4]
-_0807673C:
- bl sub_08077F84
- movs r0, #0x78
- bl SoundReq
- b _08076754
- .align 2, 0
-_08076748: .4byte gPlayerEntity
-_0807674C:
- adds r0, r3, #0
- adds r1, r4, #0
- bl sub_08077E78
-_08076754:
- pop {r4, r5, pc}
- .align 2, 0
+ .include "asm/item/itemBoomerang.inc"
- thumb_func_start sub_08076758
-sub_08076758: @ 0x08076758
- push {r4, r5, lr}
- adds r4, r0, #0
- ldr r5, _080767C0 @ =gPlayerState
- movs r0, #0
- strb r0, [r5, #0xe]
- ldrb r2, [r5, #2]
- movs r0, #0x28
- ands r0, r2
- cmp r0, #0
- bne _080767F8
- cmp r2, #0
- beq _080767F8
- movs r0, #7
- ands r0, r2
- cmp r0, #3
- beq _080767F8
- adds r0, r4, #0
- bl sub_08077EFC
- cmp r0, #0
- beq _080767D8
- ldrb r0, [r4, #4]
- cmp r0, #1
- bhi _080767C8
- ldr r2, _080767C4 @ =gPlayerEntity
- ldr r0, [r2, #0x20]
- cmp r0, #0
- bgt _080767FE
- ldrb r3, [r5, #2]
- movs r0, #0x10
- ands r0, r3
- cmp r0, #0
- bne _080767FE
- movs r0, #2
- strb r0, [r4, #4]
- adds r1, r2, #0
- adds r1, #0x7a
- strh r0, [r1]
- movs r0, #0x80
- lsls r0, r0, #0xa
- str r0, [r2, #0x20]
- movs r0, #0x10
- orrs r0, r3
- strb r0, [r5, #2]
- movs r0, #0xa2
- lsls r0, r0, #2
- strh r0, [r5, #8]
- movs r0, #0xb9
- lsls r0, r0, #1
- bl SoundReq
- b _080767FE
- .align 2, 0
-_080767C0: .4byte gPlayerState
-_080767C4: .4byte gPlayerEntity
-_080767C8:
- ldr r1, _080767D4 @ =gPlayerEntity
- adds r1, #0x7a
- ldrh r0, [r1]
- adds r0, #1
- strh r0, [r1]
- b _080767FE
- .align 2, 0
-_080767D4: .4byte gPlayerEntity
-_080767D8:
- ldrb r0, [r4, #4]
- cmp r0, #1
- bls _080767FE
- ldr r1, _080767F4 @ =gPlayerEntity
- adds r1, #0x7a
- ldrh r0, [r1]
- adds r0, #1
- strh r0, [r1]
- ldrb r1, [r5, #2]
- movs r0, #0xef
- ands r0, r1
- strb r0, [r5, #2]
- b _080767FE
- .align 2, 0
-_080767F4: .4byte gPlayerEntity
-_080767F8:
- adds r0, r4, #0
- bl sub_08077E78
-_080767FE:
- pop {r4, r5, pc}
+ .include "asm/item/itemBow.inc"
- thumb_func_start ItemPegasusBoots
-ItemPegasusBoots: @ 0x08076800
- push {r4, r5, r6, r7, lr}
- mov r7, sb
- mov r6, r8
- push {r6, r7}
- adds r6, r0, #0
- mov sb, r1
- ldr r4, _0807682C @ =gPlayerEntity
- adds r0, r4, #0
- adds r0, #0x7a
- ldrh r0, [r0]
- cmp r0, #0
- beq _08076834
- ldr r1, _08076830 @ =gPlayerState
- movs r0, #0
- strb r0, [r1, #0x1e]
- strb r0, [r1, #0xe]
- adds r0, r6, #0
- mov r1, sb
- bl sub_08077E78
- b _080768EC
- .align 2, 0
-_0807682C: .4byte gPlayerEntity
-_08076830: .4byte gPlayerState
-_08076834:
- ldrb r0, [r6, #7]
- subs r0, #1
- strb r0, [r6, #7]
- movs r1, #7
- mov r8, r1
- ands r0, r1
- cmp r0, #0
- bne _0807684A
- movs r0, #0x7d
- bl SoundReq
-_0807684A:
- ldr r2, _08076880 @ =gPlayerState
- ldr r0, [r2, #0x30]
- movs r1, #0x80
- ands r0, r1
- cmp r0, #0
- bne _080768DA
- ldrb r1, [r6, #7]
- mov r0, r8
- ands r0, r1
- cmp r0, #0
- bne _080768DA
- ldrb r0, [r2, #0x12]
- cmp r0, #0x11
- bne _08076884
- adds r0, r4, #0
- adds r0, #0x63
- ldrb r0, [r0]
- lsls r0, r0, #0x18
- asrs r0, r0, #0x18
- cmp r0, #0
- bne _080768DA
- adds r0, r4, #0
- movs r1, #0x52
- movs r2, #0
- bl CreateFx
- b _080768DA
- .align 2, 0
-_08076880: .4byte gPlayerState
-_08076884:
- adds r0, r4, #0
- movs r1, #0x11
- movs r2, #0x40
- bl CreateFx
- adds r5, r0, #0
- cmp r5, #0
- beq _080768DA
- ldrh r0, [r5, #0x32]
- adds r0, #2
- strh r0, [r5, #0x32]
- ldrb r0, [r6, #4]
- cmp r0, #2
- beq _080768DA
- bl Random
- adds r4, r0, #0
- movs r0, #3
- ands r4, r0
- bl Random
- movs r7, #1
- ands r0, r7
- cmp r0, #0
- beq _080768B8
- rsbs r4, r4, #0
-_080768B8:
- ldrh r0, [r5, #0x32]
- adds r0, r0, r4
- strh r0, [r5, #0x32]
- bl Random
- adds r4, r0, #0
- mov r0, r8
- ands r4, r0
- bl Random
- ands r0, r7
- cmp r0, #0
- beq _080768D4
- rsbs r4, r4, #0
-_080768D4:
- ldrh r0, [r5, #0x2e]
- adds r0, r0, r4
- strh r0, [r5, #0x2e]
-_080768DA:
- ldr r0, _080768F4 @ =gUnk_0811BDCC
- ldrb r1, [r6, #4]
- lsls r1, r1, #2
- adds r1, r1, r0
- ldr r2, [r1]
- adds r0, r6, #0
- mov r1, sb
- bl _call_via_r2
-_080768EC:
- pop {r3, r4}
- mov r8, r3
- mov sb, r4
- pop {r4, r5, r6, r7, pc}
- .align 2, 0
-_080768F4: .4byte gUnk_0811BDCC
+ .include "asm/item/itemBomb.inc"
- thumb_func_start sub_080768F8
-sub_080768F8: @ 0x080768F8
- push {r4, r5, lr}
- adds r4, r0, #0
- adds r5, r1, #0
- ldr r3, _08076934 @ =gPlayerState
- ldrb r1, [r3, #0x1c]
- ldrb r0, [r3, #4]
- orrs r1, r0
- ldrb r0, [r3, #5]
- orrs r1, r0
- ldrb r0, [r3, #2]
- orrs r1, r0
- ldr r2, [r3, #0x30]
- movs r0, #0x80
- lsls r0, r0, #5
- ands r0, r2
- orrs r1, r0
- cmp r1, #0
- bne _08076954
- movs r0, #1
- strb r0, [r3, #0x1e]
- adds r0, r3, #0
- adds r0, #0x21
- strb r1, [r0]
- movs r0, #0x80
- ands r2, r0
- cmp r2, #0
- bne _08076938
- movs r0, #0x10
- strb r0, [r4, #7]
- b _0807693C
- .align 2, 0
-_08076934: .4byte gPlayerState
-_08076938:
- ldr r0, _08076950 @ =0x00000C14
- strh r0, [r3, #8]
-_0807693C:
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08077D38
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08076964
- b _08076962
- .align 2, 0
-_08076950: .4byte 0x00000C14
-_08076954:
- movs r0, #0
- strb r0, [r3, #0x1e]
- strb r0, [r3, #0xe]
- adds r0, r4, #0
- adds r1, r5, #0
- bl sub_08077E78
-_08076962:
- pop {r4, r5, pc}
+ .include "asm/item/itemTryPickupObject.inc"
- thumb_func_start sub_08076964
-sub_08076964: @ 0x08076964
- push {r4, r5, r6, r7, lr}
- mov r7, r8
- push {r7}
- adds r4, r0, #0
- adds r6, r1, #0
- bl sub_08077EFC
- cmp r0, #0
- bne _08076978
- b _08076A70
-_08076978:
- ldr r0, _080769C4 @ =gPlayerEntity
- ldr r7, [r0, #0x34]
- cmp r7, #0
- bne _08076A70
- ldr r5, _080769C8 @ =gPlayerState
- ldrb r0, [r5, #0x1e]
- cmp r0, #0
- beq _08076A70
- adds r0, r4, #0
- bl UpdateItemAnim
- ldr r0, [r5, #0x30]
- movs r1, #0x80
- mov r8, r1
- ands r0, r1
- cmp r0, #0
- bne _080769A0
- adds r0, r4, #0
- bl UpdateItemAnim
-_080769A0:
- ldrb r0, [r5, #0x1e]
- adds r0, #1
- strb r0, [r5, #0x1e]
- lsls r0, r0, #0x18
- lsrs r0, r0, #0x18
- cmp r0, #0x1e
- bne _08076A7E
- ldr r0, [r5, #0x30]
- movs r1, #2
- ands r0, r1
- cmp r0, #0
- beq _080769CC
- strb r7, [r5, #0x1e]
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_08077E78
- b _08076A7E
- .align 2, 0
-_080769C4: .4byte gPlayerEntity
-_080769C8: .4byte gPlayerState
-_080769CC:
- movs r0, #0x40
- strb r0, [r5, #0x1e]
- movs r1, #8
- asrs r1, r6
- ldrb r0, [r5, #0xa]
- bics r0, r1
- strb r0, [r5, #0xa]
- ldrb r0, [r4, #4]
- adds r0, #1
- strb r0, [r4, #4]
- bl sub_0807A158
- cmp r0, #0
- beq _08076A46
- ldr r0, [r5, #0x30]
- mov r1, r8
- ands r0, r1
- cmp r0, #0
- bne _08076A60
- adds r0, r5, #0
- adds r0, #0xac
- ldrh r1, [r0]
- movs r0, #4
- ands r0, r1
- cmp r0, #0
- beq _08076A46
- adds r0, r5, #0
- adds r0, #0xab
- movs r1, #3
- strb r1, [r0]
- movs r1, #0xa6
- lsls r1, r1, #2
- adds r0, r4, #0
- bl sub_08077DF4
- adds r0, r4, #0
- movs r1, #0xc
- bl CreatePlayerBomb
- adds r5, r0, #0
- cmp r5, #0
- beq _08076A70
- ldr r6, _08076A34 @ =gSave
- adds r4, r6, #0
- adds r4, #0xb4
- ldrb r0, [r4]
- bl sub_0805449C
- cmp r0, #0
- beq _08076A38
- ldrb r1, [r4]
- b _08076A3E
- .align 2, 0
-_08076A34: .4byte gSave
-_08076A38:
- adds r0, r6, #0
- adds r0, #0xb5
- ldrb r1, [r0]
-_08076A3E:
- adds r0, r5, #0
- adds r0, #0x68
- strb r1, [r0]
- b _08076A7E
-_08076A46:
- ldr r0, _08076A5C @ =gPlayerState
- ldr r0, [r0, #0x30]
- movs r1, #0x80
- ands r0, r1
- cmp r0, #0
- bne _08076A60
- adds r1, #0x84
- adds r0, r4, #0
- bl sub_08077DF4
- b _08076A7E
- .align 2, 0
-_08076A5C: .4byte gPlayerState
-_08076A60:
- ldr r1, _08076A6C @ =gPlayerState
- movs r0, #0xc1
- lsls r0, r0, #4
- strh r0, [r1, #8]
- b _08076A7E
- .align 2, 0
-_08076A6C: .4byte gPlayerState
-_08076A70:
- ldr r1, _08076A84 @ =gPlayerState
- movs r0, #0
- strb r0, [r1, #0x1e]
- adds r0, r4, #0
- adds r1, r6, #0
- bl sub_08077E78
-_08076A7E:
- pop {r3}
- mov r8, r3
- pop {r4, r5, r6, r7, pc}
- .align 2, 0
-_08076A84: .4byte gPlayerState
+ .include "asm/item/itemRocsCape.inc"
- thumb_func_start sub_08076A88
-sub_08076A88: @ 0x08076A88
- push {r4, r5, r6, r7, lr}
- adds r4, r0, #0
- adds r7, r1, #0
- bl sub_08077EFC
- cmp r0, #0
- beq _08076B64
- ldr r1, _08076AB4 @ =gPlayerState
- ldrb r0, [r1, #0x1e]
- adds r3, r1, #0
- cmp r0, #0
- beq _08076B64
- ldr r0, [r3, #0x30]
- movs r1, #0x80
- ands r0, r1
- cmp r0, #0
- bne _08076ABC
- ldr r1, _08076AB8 @ =gPlayerEntity
- movs r0, #0xc0
- lsls r0, r0, #2
- b _08076AC2
- .align 2, 0
-_08076AB4: .4byte gPlayerState
-_08076AB8: .4byte gPlayerEntity
-_08076ABC:
- ldr r1, _08076B00 @ =gPlayerEntity
- movs r0, #0xa0
- lsls r0, r0, #2
-_08076AC2:
- strh r0, [r1, #0x24]
- adds r5, r1, #0
- ldr r1, _08076B04 @ =gUnk_0800275C
- ldrb r2, [r5, #0x14]
- movs r6, #0xe
- adds r0, r6, #0
- ands r0, r2
- lsls r0, r0, #3
- adds r0, r0, r1
- ldrh r1, [r0]
- ldrh r0, [r5, #0x2a]
- ands r0, r1
- cmp r1, r0
- bne _08076B0E
- ldrb r0, [r4, #8]
- cmp r0, #0
- beq _08076B08
- movs r2, #0
- movs r0, #6
- strb r0, [r5, #0xc]
- strb r2, [r5, #0xd]
- ldrb r1, [r5, #0x10]
- movs r0, #0x7f
- ands r0, r1
- strb r0, [r5, #0x10]
- adds r0, r3, #0
- adds r0, #0x38
- strb r2, [r0]
- movs r0, #0xff
- strb r0, [r3, #0xd]
- b _08076B72
- .align 2, 0
-_08076B00: .4byte gPlayerEntity
-_08076B04: .4byte gUnk_0800275C
-_08076B08:
- movs r0, #1
- strb r0, [r4, #8]
- b _08076B72
-_08076B0E:
- ldr r1, _08076B60 @ =gUnk_0811BE38
- movs r0, #0xfe
- ands r0, r2
- adds r0, r0, r1
- adds r1, r3, #0
- adds r1, #0x90
- ldrh r2, [r0]
- ldrh r0, [r1]
- ands r0, r2
- cmp r0, #0
- bne _08076B64
- ldrb r0, [r4, #0xa]
- adds r1, r6, #0
- ands r1, r0
- lsls r0, r1, #2
- strb r0, [r4, #0xb]
- ldrb r2, [r3, #0xd]
- cmp r2, #0xff
- beq _08076B52
- cmp r2, r0
- beq _08076B52
- adds r0, r2, #0
- ldrb r1, [r4, #0xb]
- subs r0, r0, r1
- movs r2, #0x1f
- ands r0, r2
- cmp r0, #0xf
- bgt _08076B4A
- adds r0, r1, #2
- strb r0, [r4, #0xb]
-_08076B4A:
- ldrb r0, [r4, #0xb]
- subs r0, #1
- ands r0, r2
- strb r0, [r4, #0xb]
-_08076B52:
- ldrb r0, [r4, #0xb]
- strb r0, [r3, #0xd]
- adds r0, r4, #0
- bl UpdateItemAnim
- b _08076B72
- .align 2, 0
-_08076B60: .4byte gUnk_0811BE38
-_08076B64:
- ldr r1, _08076B74 @ =gPlayerState
- movs r0, #0
- strb r0, [r1, #0x1e]
- adds r0, r4, #0
- adds r1, r7, #0
- bl sub_08077E78
-_08076B72:
- pop {r4, r5, r6, r7, pc}
- .align 2, 0
-_08076B74: .4byte gPlayerState
+ .include "asm/item/itemPegasusBoots.inc"