summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2020-03-04 14:58:44 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2020-03-04 14:58:44 -0500
commit6871f3dd3357b5660af6e1607028fde5a0afd862 (patch)
tree69323e844ac2b81bad73ce134910bc9942decabe /asm
parent171e4bbea427e66c5a30d01d4306dbcdf165e81c (diff)
through sub_8153048
Diffstat (limited to 'asm')
-rw-r--r--asm/dodrio_berry_picking.s3074
1 files changed, 3 insertions, 3071 deletions
diff --git a/asm/dodrio_berry_picking.s b/asm/dodrio_berry_picking.s
index 81204d1ba..dbe7dc85c 100644
--- a/asm/dodrio_berry_picking.s
+++ b/asm/dodrio_berry_picking.s
@@ -5,3074 +5,6 @@
.text
- thumb_func_start sub_8151A5C
-sub_8151A5C: @ 8151A5C
- push {r4-r7,lr}
- sub sp, 0x18
- ldr r5, _08151B20 @ =gUnknown_203F3E0
- ldr r0, [r5]
- adds r1, r0, 0
- adds r1, 0x24
- ldrb r6, [r1]
- ldr r2, _08151B24 @ =0x000031a0
- adds r1, r0, r2
- ldr r3, _08151B28 @ =0x000031cc
- adds r2, r0, r3
- ldr r4, _08151B2C @ =0x00003208
- adds r3, r0, r4
- ldr r7, _08151B30 @ =0x00003244
- adds r4, r0, r7
- str r4, [sp]
- adds r7, 0x3C
- adds r4, r0, r7
- str r4, [sp, 0x4]
- adds r7, 0x3C
- adds r4, r0, r7
- str r4, [sp, 0x8]
- adds r4, r0, 0
- adds r4, 0x40
- str r4, [sp, 0xC]
- movs r7, 0x90
- lsls r7, 1
- adds r4, r0, r7
- str r4, [sp, 0x10]
- movs r4, 0x96
- lsls r4, 1
- adds r0, r4
- str r0, [sp, 0x14]
- movs r0, 0
- bl sub_815A950
- ldr r1, [r5]
- ldr r7, _08151B34 @ =0x000031b0
- adds r2, r1, r7
- str r0, [r2]
- movs r0, 0x94
- lsls r0, 1
- adds r1, r0
- movs r0, 0x1
- strb r0, [r1]
- movs r4, 0x1
- cmp r4, r6
- bcs _08151AEC
-_08151ABC:
- adds r0, r4, 0
- bl sub_815AB60
- cmp r0, 0
- beq _08151AE2
- ldr r0, _08151B20 @ =gUnknown_203F3E0
- ldr r2, [r0]
- lsls r1, r4, 2
- movs r3, 0x98
- lsls r3, 1
- adds r0, r2, r3
- adds r0, r1
- movs r1, 0x1
- str r1, [r0]
- movs r7, 0x94
- lsls r7, 1
- adds r1, r2, r7
- movs r0, 0
- strb r0, [r1]
-_08151AE2:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r6
- bcc _08151ABC
-_08151AEC:
- ldr r5, _08151B20 @ =gUnknown_203F3E0
- ldr r1, [r5]
- movs r6, 0x92
- lsls r6, 1
- adds r1, r6
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3B
- bls _08151B4A
- ldr r1, [r5]
- movs r2, 0x94
- lsls r2, 1
- adds r0, r1, r2
- ldrb r4, [r0]
- cmp r4, 0
- beq _08151B38
- bl sub_80FBA44
- ldr r0, [r5]
- adds r0, r6
- movs r1, 0
- strb r1, [r0]
- b _08151B4A
- .align 2, 0
-_08151B20: .4byte gUnknown_203F3E0
-_08151B24: .4byte 0x000031a0
-_08151B28: .4byte 0x000031cc
-_08151B2C: .4byte 0x00003208
-_08151B30: .4byte 0x00003244
-_08151B34: .4byte 0x000031b0
-_08151B38:
- adds r0, r1, r6
- ldrb r0, [r0]
- cmp r0, 0x46
- bls _08151B4A
- bl sub_80FBA44
- ldr r0, [r5]
- adds r0, r6
- strb r4, [r0]
-_08151B4A:
- add sp, 0x18
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8151A5C
-
- thumb_func_start sub_8151B54
-sub_8151B54: @ 8151B54
- push {r4,r5,lr}
- ldr r5, _08151B6C @ =gUnknown_203F3E0
- ldr r0, [r5]
- ldrb r0, [r0, 0x18]
- cmp r0, 0x4
- beq _08151B90
- cmp r0, 0x4
- bgt _08151B70
- cmp r0, 0x3
- beq _08151B76
- b _08151B9A
- .align 2, 0
-_08151B6C: .4byte gUnknown_203F3E0
-_08151B70:
- cmp r0, 0xB
- beq _08151B96
- b _08151B9A
-_08151B76:
- bl sub_8152A00
- adds r4, r0, 0
- cmp r4, 0x1
- bne _08151B9A
- bl sub_8152A70
- ldr r0, [r5]
- movs r1, 0x8E
- lsls r1, 1
- adds r0, r1
- str r4, [r0]
- b _08151B9A
-_08151B90:
- bl sub_815184C
- b _08151B9A
-_08151B96:
- bl sub_8151A5C
-_08151B9A:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8151B54
-
- thumb_func_start sub_8151BA0
-sub_8151BA0: @ 8151BA0
- push {r4-r6,lr}
- sub sp, 0x14
- ldr r0, _08151BB4 @ =gUnknown_203F3E0
- ldr r5, [r0]
- ldrb r0, [r5, 0x18]
- cmp r0, 0x4
- beq _08151BB8
- cmp r0, 0xB
- beq _08151C08
- b _08151C44
- .align 2, 0
-_08151BB4: .4byte gUnknown_203F3E0
-_08151BB8:
- ldr r1, _08151BF8 @ =0x000032cc
- adds r0, r5, r1
- ldr r2, _08151BFC @ =0x000031cc
- adds r1, r5, r2
- ldr r3, _08151C00 @ =0x00003208
- adds r2, r5, r3
- ldr r4, _08151C04 @ =0x00003244
- adds r3, r5, r4
- movs r6, 0xCA
- lsls r6, 6
- adds r4, r5, r6
- str r4, [sp]
- adds r6, 0x3C
- adds r4, r5, r6
- str r4, [sp, 0x4]
- adds r4, r5, 0
- adds r4, 0x40
- ldrb r4, [r4]
- str r4, [sp, 0x8]
- movs r6, 0x90
- lsls r6, 1
- adds r4, r5, r6
- ldr r4, [r4]
- str r4, [sp, 0xC]
- adds r6, 0xC
- adds r4, r5, r6
- ldr r4, [r4]
- str r4, [sp, 0x10]
- bl sub_815A61C
- b _08151C44
- .align 2, 0
-_08151BF8: .4byte 0x000032cc
-_08151BFC: .4byte 0x000031cc
-_08151C00: .4byte 0x00003208
-_08151C04: .4byte 0x00003244
-_08151C08:
- ldr r1, _08151C4C @ =0x000032cc
- adds r0, r5, r1
- ldr r2, _08151C50 @ =0x000031cc
- adds r1, r5, r2
- ldr r3, _08151C54 @ =0x00003208
- adds r2, r5, r3
- ldr r4, _08151C58 @ =0x00003244
- adds r3, r5, r4
- movs r6, 0xCA
- lsls r6, 6
- adds r4, r5, r6
- str r4, [sp]
- adds r6, 0x3C
- adds r4, r5, r6
- str r4, [sp, 0x4]
- adds r4, r5, 0
- adds r4, 0x40
- ldrb r4, [r4]
- str r4, [sp, 0x8]
- movs r6, 0x90
- lsls r6, 1
- adds r4, r5, r6
- ldr r4, [r4]
- str r4, [sp, 0xC]
- adds r6, 0xC
- adds r4, r5, r6
- ldr r4, [r4]
- str r4, [sp, 0x10]
- bl sub_815A61C
-_08151C44:
- add sp, 0x14
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08151C4C: .4byte 0x000032cc
-_08151C50: .4byte 0x000031cc
-_08151C54: .4byte 0x00003208
-_08151C58: .4byte 0x00003244
- thumb_func_end sub_8151BA0
-
- thumb_func_start sub_8151C5C
-sub_8151C5C: @ 8151C5C
- push {r4-r6,lr}
- sub sp, 0x18
- ldr r0, _08151C70 @ =gUnknown_203F3E0
- ldr r5, [r0]
- ldrb r0, [r5, 0x18]
- cmp r0, 0x4
- beq _08151C74
- cmp r0, 0xB
- beq _08151CCC
- b _08151D10
- .align 2, 0
-_08151C70: .4byte gUnknown_203F3E0
-_08151C74:
- adds r0, r5, 0
- adds r0, 0x28
- ldrb r0, [r0]
- lsls r1, r0, 4
- subs r1, r0
- lsls r1, 2
- ldr r2, _08151CBC @ =0x000031a0
- adds r1, r2
- adds r1, r5, r1
- ldr r3, _08151CC0 @ =0x000031cc
- adds r2, r5, r3
- ldr r4, _08151CC4 @ =0x00003208
- adds r3, r5, r4
- ldr r6, _08151CC8 @ =0x00003244
- adds r4, r5, r6
- str r4, [sp]
- adds r6, 0x3C
- adds r4, r5, r6
- str r4, [sp, 0x4]
- adds r6, 0x3C
- adds r4, r5, r6
- str r4, [sp, 0x8]
- adds r4, r5, 0
- adds r4, 0x40
- str r4, [sp, 0xC]
- movs r6, 0x90
- lsls r6, 1
- adds r4, r5, r6
- str r4, [sp, 0x10]
- adds r6, 0xC
- adds r4, r5, r6
- str r4, [sp, 0x14]
- bl sub_815A950
- b _08151D10
- .align 2, 0
-_08151CBC: .4byte 0x000031a0
-_08151CC0: .4byte 0x000031cc
-_08151CC4: .4byte 0x00003208
-_08151CC8: .4byte 0x00003244
-_08151CCC:
- adds r0, r5, 0
- adds r0, 0x28
- ldrb r0, [r0]
- lsls r1, r0, 4
- subs r1, r0
- lsls r1, 2
- ldr r2, _08151D18 @ =0x000031a0
- adds r1, r2
- adds r1, r5, r1
- ldr r3, _08151D1C @ =0x000031cc
- adds r2, r5, r3
- ldr r4, _08151D20 @ =0x00003208
- adds r3, r5, r4
- ldr r6, _08151D24 @ =0x00003244
- adds r4, r5, r6
- str r4, [sp]
- adds r6, 0x3C
- adds r4, r5, r6
- str r4, [sp, 0x4]
- adds r6, 0x3C
- adds r4, r5, r6
- str r4, [sp, 0x8]
- adds r4, r5, 0
- adds r4, 0x40
- str r4, [sp, 0xC]
- movs r6, 0x90
- lsls r6, 1
- adds r4, r5, r6
- str r4, [sp, 0x10]
- adds r6, 0xC
- adds r4, r5, r6
- str r4, [sp, 0x14]
- bl sub_815A950
-_08151D10:
- add sp, 0x18
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08151D18: .4byte 0x000031a0
-_08151D1C: .4byte 0x000031cc
-_08151D20: .4byte 0x00003208
-_08151D24: .4byte 0x00003244
- thumb_func_end sub_8151C5C
-
- thumb_func_start sub_8151D28
-sub_8151D28: @ 8151D28
- push {r4,lr}
- ldr r4, _08151D40 @ =gUnknown_203F3E0
- ldr r1, [r4]
- ldrb r0, [r1, 0x18]
- cmp r0, 0x4
- beq _08151D5E
- cmp r0, 0x4
- bgt _08151D44
- cmp r0, 0x3
- beq _08151D4A
- b _08151D90
- .align 2, 0
-_08151D40: .4byte gUnknown_203F3E0
-_08151D44:
- cmp r0, 0xB
- beq _08151D74
- b _08151D90
-_08151D4A:
- movs r0, 0x1
- bl sub_815A5BC
- ldr r0, [r4]
- movs r1, 0x8E
- lsls r1, 1
- adds r0, r1
- movs r1, 0x1
- str r1, [r0]
- b _08151D90
-_08151D5E:
- ldr r2, _08151D70 @ =0x000032f8
- adds r1, r2
- ldrb r0, [r1]
- cmp r0, 0
- beq _08151D90
- bl sub_815AAD8
- b _08151D90
- .align 2, 0
-_08151D70: .4byte 0x000032f8
-_08151D74:
- movs r2, 0x90
- lsls r2, 1
- adds r0, r1, r2
- ldr r0, [r0]
- cmp r0, 0
- bne _08151D90
- adds r2, 0xC
- adds r0, r1, r2
- ldr r0, [r0]
- cmp r0, 0
- bne _08151D90
- movs r0, 0x1
- bl sub_815AB3C
-_08151D90:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8151D28
-
- thumb_func_start sub_8151D98
-sub_8151D98: @ 8151D98
- push {r4-r6,lr}
- ldr r6, _08151DD0 @ =gUnknown_203F3E0
- ldr r2, [r6]
- adds r0, r2, 0
- adds r0, 0x28
- ldrb r1, [r0]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 2
- adds r1, r2, r0
- ldr r3, _08151DD4 @ =0x000031cc
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0
- bne _08151DD8
- bl IsSEPlaying
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- bne _08151E3A
- ldr r0, [r6]
- movs r2, 0xA2
- lsls r2, 1
- adds r0, r2
- strb r1, [r0]
- b _08151E3A
- .align 2, 0
-_08151DD0: .4byte gUnknown_203F3E0
-_08151DD4: .4byte 0x000031cc
-_08151DD8:
- ldr r3, _08151E04 @ =0x000031d0
- adds r0, r1, r3
- ldrb r4, [r0]
- cmp r4, 0x1
- bne _08151E08
- movs r1, 0xA2
- lsls r1, 1
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _08151E3A
- movs r0, 0x19
- bl m4aSongNumStop
- movs r0, 0x19
- bl PlaySE
- ldr r0, [r6]
- movs r2, 0xA2
- lsls r2, 1
- adds r0, r2
- b _08151E38
- .align 2, 0
-_08151E04: .4byte 0x000031d0
-_08151E08:
- ldr r3, _08151E64 @ =0x000031d4
- adds r0, r1, r3
- ldrb r4, [r0]
- cmp r4, 0x1
- bne _08151E3A
- movs r5, 0xA2
- lsls r5, 1
- adds r0, r2, r5
- ldrb r0, [r0]
- cmp r0, 0
- bne _08151E3A
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- bne _08151E3A
- movs r0, 0x16
- bl PlaySE
- movs r0, 0x1
- bl sub_8153BC0
- ldr r0, [r6]
- adds r0, r5
-_08151E38:
- strb r4, [r0]
-_08151E3A:
- ldr r0, _08151E68 @ =gUnknown_203F3E0
- ldr r2, [r0]
- movs r5, 0xAA
- lsls r5, 1
- adds r1, r2, r5
- ldrb r1, [r1]
- adds r4, r0, 0
- cmp r1, 0
- bne _08151E6C
- adds r0, r2, 0
- adds r0, 0x40
- ldrb r0, [r0]
- cmp r0, 0x9
- bls _08151E6C
- bl StopMapMusic
- ldr r0, [r4]
- adds r0, r5
- movs r1, 0x1
- b _08151E8A
- .align 2, 0
-_08151E64: .4byte 0x000031d4
-_08151E68: .4byte gUnknown_203F3E0
-_08151E6C:
- ldr r0, [r4]
- movs r1, 0xAA
- lsls r1, 1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08151E8C
- movs r0, 0xA
- bl PlayFanfareByFanfareNum
- ldr r0, [r4]
- movs r2, 0xAA
- lsls r2, 1
- adds r0, r2
- movs r1, 0x2
-_08151E8A:
- strb r1, [r0]
-_08151E8C:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8151D98
-
- thumb_func_start sub_8151E94
-sub_8151E94: @ 8151E94
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r6, _08151EE0 @ =gUnknown_203F3E0
- ldr r2, [r6]
- adds r0, r2, 0
- adds r0, 0x44
- ldrb r0, [r0]
- mov r8, r0
- adds r0, r2, 0
- adds r0, 0x48
- ldrb r7, [r0]
- subs r0, 0x20
- ldrb r1, [r0]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 2
- adds r1, r2, r0
- ldr r3, _08151EE4 @ =0x000031cc
- adds r0, r1, r3
- ldrb r3, [r0]
- cmp r3, 0
- bne _08151EEC
- ldr r4, _08151EE8 @ =0x000031d0
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _08151F4E
- adds r4, 0x4
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _08151F4E
- movs r1, 0xA2
- lsls r1, 1
- adds r0, r2, r1
- strb r3, [r0]
- b _08151F4E
- .align 2, 0
-_08151EE0: .4byte gUnknown_203F3E0
-_08151EE4: .4byte 0x000031cc
-_08151EE8: .4byte 0x000031d0
-_08151EEC:
- ldr r3, _08151F18 @ =0x000031d0
- adds r0, r1, r3
- ldrb r4, [r0]
- cmp r4, 0x1
- bne _08151F1C
- movs r1, 0xA2
- lsls r1, 1
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _08151F4E
- movs r0, 0x19
- bl m4aSongNumStop
- movs r0, 0x19
- bl PlaySE
- ldr r0, [r6]
- movs r3, 0xA2
- lsls r3, 1
- adds r0, r3
- b _08151F4C
- .align 2, 0
-_08151F18: .4byte 0x000031d0
-_08151F1C:
- ldr r4, _08151FA0 @ =0x000031d4
- adds r0, r1, r4
- ldrb r4, [r0]
- cmp r4, 0x1
- bne _08151F4E
- movs r5, 0xA2
- lsls r5, 1
- adds r0, r2, r5
- ldrb r0, [r0]
- cmp r0, 0
- bne _08151F4E
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- bne _08151F4E
- movs r0, 0x16
- bl PlaySE
- movs r0, 0x1
- bl sub_8153BC0
- ldr r0, [r6]
- adds r0, r5
-_08151F4C:
- strb r4, [r0]
-_08151F4E:
- mov r4, r8
- cmp r4, r7
- bcs _08151FC2
- ldr r5, _08151FA4 @ =gUnknown_203F3E0
-_08151F56:
- ldr r2, [r5]
- adds r0, r2, 0
- adds r0, 0x28
- ldrb r1, [r0]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 2
- ldr r1, _08151FA8 @ =0x000031a0
- adds r0, r1
- adds r0, r2, r0
- adds r1, r0, 0
- adds r1, 0x14
- adds r0, 0x1F
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x9
- bls _08151FAC
- movs r3, 0xA4
- lsls r3, 1
- adds r0, r2, r3
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _08151FB8
- adds r0, r1, r4
- ldrb r0, [r0]
- adds r0, 0x43
- bl PlaySE
- ldr r0, [r5]
- movs r1, 0xA4
- lsls r1, 1
- adds r0, r1
- adds r0, r4
- movs r1, 0x1
- b _08151FB6
- .align 2, 0
-_08151FA0: .4byte 0x000031d4
-_08151FA4: .4byte gUnknown_203F3E0
-_08151FA8: .4byte 0x000031a0
-_08151FAC:
- movs r3, 0xA4
- lsls r3, 1
- adds r0, r2, r3
- adds r0, r4
- movs r1, 0
-_08151FB6:
- strb r1, [r0]
-_08151FB8:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r7
- bcc _08151F56
-_08151FC2:
- ldr r0, _08151FEC @ =gUnknown_203F3E0
- ldr r2, [r0]
- movs r5, 0xAA
- lsls r5, 1
- adds r1, r2, r5
- ldrb r1, [r1]
- adds r4, r0, 0
- cmp r1, 0
- bne _08151FF0
- adds r0, r2, 0
- adds r0, 0x40
- ldrb r0, [r0]
- cmp r0, 0x9
- bls _08151FF0
- bl StopMapMusic
- ldr r0, [r4]
- adds r0, r5
- movs r1, 0x1
- b _0815200E
- .align 2, 0
-_08151FEC: .4byte gUnknown_203F3E0
-_08151FF0:
- ldr r0, [r4]
- movs r1, 0xAA
- lsls r1, 1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08152010
- movs r0, 0xA
- bl PlayFanfareByFanfareNum
- ldr r0, [r4]
- movs r3, 0xAA
- lsls r3, 1
- adds r0, r3
- movs r1, 0x2
-_0815200E:
- strb r1, [r0]
-_08152010:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8151E94
-
- thumb_func_start sub_815201C
-sub_815201C: @ 815201C
- push {lr}
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- pop {r0}
- bx r0
- thumb_func_end sub_815201C
-
- thumb_func_start sub_8152034
-sub_8152034: @ 8152034
- push {lr}
- bl TransferPlttBuffer
- bl LoadOam
- bl ProcessSpriteCopyRequests
- pop {r0}
- bx r0
- thumb_func_end sub_8152034
-
- thumb_func_start sub_8152048
-sub_8152048: @ 8152048
- push {r4,lr}
- adds r4, r0, 0
- adds r0, r1, 0
- bl IsMonShiny
- strb r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8152048
-
- thumb_func_start sub_815205C
-sub_815205C: @ 815205C
- push {lr}
- lsls r1, 24
- lsrs r1, 24
- bl CreateTask
- pop {r0}
- bx r0
- thumb_func_end sub_815205C
-
- thumb_func_start sub_815206C
-sub_815206C: @ 815206C
- push {lr}
- movs r1, 0x1
- bl CreateTask
- ldr r1, _0815208C @ =gUnknown_203F3E0
- ldr r3, [r1]
- movs r2, 0
- strb r0, [r3, 0x4]
- ldr r0, [r1]
- strb r2, [r0, 0x10]
- ldr r0, [r1]
- strb r2, [r0, 0xC]
- ldr r0, [r1]
- strb r2, [r0, 0x14]
- pop {r0}
- bx r0
- .align 2, 0
-_0815208C: .4byte gUnknown_203F3E0
- thumb_func_end sub_815206C
-
- thumb_func_start sub_8152090
-sub_8152090: @ 8152090
- push {r4,lr}
- ldr r2, _081520B0 @ =gUnknown_203F3E0
- ldr r1, [r2]
- ldrb r3, [r1, 0x18]
- movs r4, 0
- strb r3, [r1, 0x1C]
- ldr r1, [r2]
- strb r0, [r1, 0x18]
- ldr r0, [r2]
- strb r4, [r0, 0x10]
- ldr r0, [r2]
- strb r4, [r0, 0x14]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081520B0: .4byte gUnknown_203F3E0
- thumb_func_end sub_8152090
-
- thumb_func_start sub_81520B4
-sub_81520B4: @ 81520B4
- push {r4,lr}
- ldr r3, _081520E8 @ =gUnknown_203F3E0
- ldr r1, [r3]
- ldrb r0, [r1, 0x14]
- lsrs r2, r0, 2
- adds r0, 0x1
- strb r0, [r1, 0x14]
- cmp r2, 0
- beq _08152108
- ldr r3, [r3]
- ldrb r0, [r3, 0x14]
- movs r1, 0x3
- ands r0, r1
- cmp r0, 0
- bne _08152108
- ldr r1, _081520EC @ =sUnknown_8475548
- adds r0, r3, 0
- adds r0, 0x24
- ldrb r0, [r0]
- subs r0, 0x1
- adds r0, r1
- ldrb r0, [r0]
- cmp r2, r0
- bcc _081520F0
- movs r0, 0x1
- b _0815210A
- .align 2, 0
-_081520E8: .4byte gUnknown_203F3E0
-_081520EC: .4byte sUnknown_8475548
-_081520F0:
- lsls r4, r2, 3
- adds r1, r4, 0
- movs r0, 0x14
- bl SetGpuReg
- negs r4, r4
- lsls r4, 16
- lsrs r4, 16
- movs r0, 0x18
- adds r1, r4, 0
- bl SetGpuReg
-_08152108:
- movs r0, 0
-_0815210A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81520B4
-
- thumb_func_start sub_8152110
-sub_8152110: @ 8152110
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r2, _08152168 @ =gUnknown_203F3E0
- ldr r0, [r2]
- adds r1, r0, 0
- adds r1, 0x44
- adds r0, 0x48
- ldrb r5, [r0]
- ldrb r1, [r1]
- cmp r1, r5
- bcs _0815215C
- mov r8, r2
- ldr r0, _0815216C @ =0x000032e0
- mov r12, r0
- movs r7, 0
- movs r6, 0x1
-_08152132:
- mov r2, r8
- ldr r0, [r2]
- mov r2, r12
- adds r4, r0, r2
- ldr r2, _08152170 @ =0x000032eb
- adds r0, r2
- adds r2, r0, r1
- movs r3, 0
- adds r0, r1, 0
- ands r0, r6
- cmp r0, 0
- bne _0815214C
- movs r3, 0x1
-_0815214C:
- strb r3, [r2]
- adds r0, r4, r1
- strb r7, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, r5
- bcc _08152132
-_0815215C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08152168: .4byte gUnknown_203F3E0
-_0815216C: .4byte 0x000032e0
-_08152170: .4byte 0x000032eb
- thumb_func_end sub_8152110
-
- thumb_func_start sub_8152174
-sub_8152174: @ 8152174
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- ldr r0, _08152248 @ =gUnknown_203F3E0
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x44
- ldrb r0, [r0]
- str r0, [sp]
- adds r0, r1, 0
- adds r0, 0x48
- ldrb r0, [r0]
- str r0, [sp, 0x4]
- adds r0, r1, 0
- adds r0, 0x24
- ldrb r0, [r0]
- str r0, [sp, 0x8]
- adds r0, r1, 0
- adds r0, 0x40
- ldrb r0, [r0]
- cmp r0, 0x9
- bls _081521A8
- b _08152464
-_081521A8:
- movs r6, 0
- ldr r0, [sp, 0x8]
- cmp r6, r0
- bcs _08152290
-_081521B0:
- ldr r3, _08152248 @ =gUnknown_203F3E0
- lsls r0, r6, 4
- subs r1, r0, r6
- lsls r1, 2
- ldr r2, [r3]
- adds r1, r2
- ldr r4, _0815224C @ =0x000031cc
- adds r4, r1
- mov r8, r4
- ldrb r1, [r4]
- mov r9, r0
- adds r0, r6, 0x1
- str r0, [sp, 0xC]
- cmp r1, 0
- beq _08152284
- adds r0, r2, 0
- adds r0, 0xA8
- adds r0, r6
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08152284
- ldr r1, [sp]
- mov r10, r1
- ldr r2, [sp, 0x4]
- cmp r10, r2
- bcs _08152284
- adds r7, r3, 0
-_081521E6:
- ldr r0, _08152250 @ =sUnknown_8471F50
- add r0, r10
- ldrb r5, [r0]
- ldr r1, [r7]
- lsls r4, r5, 1
- adds r0, r1, 0
- adds r0, 0xF4
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, r6
- beq _08152284
- adds r0, r1, 0
- adds r0, 0xF5
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, r6
- beq _08152284
- mov r0, r8
- ldrb r1, [r0]
- adds r0, r6, 0
- adds r2, r5, 0
- bl sub_8152484
- cmp r0, 0x1
- bne _08152260
- movs r2, 0
- ldr r3, _08152248 @ =gUnknown_203F3E0
- mov r8, r4
-_0815221E:
- ldr r0, [r3]
- mov r4, r8
- adds r1, r2, r4
- adds r0, 0xF4
- adds r1, r0, r1
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _08152254
- strb r6, [r1]
- ldr r0, [r3]
- adds r0, 0xA8
- adds r0, r6
- movs r1, 0x2
- strb r1, [r0]
- ldr r0, [r3]
- adds r0, 0xC4
- adds r0, r5
- movs r1, 0x1
- strb r1, [r0]
- b _08152284
- .align 2, 0
-_08152248: .4byte gUnknown_203F3E0
-_0815224C: .4byte 0x000031cc
-_08152250: .4byte sUnknown_8471F50
-_08152254:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x1
- bls _0815221E
- b _08152284
-_08152260:
- ldr r0, [r7]
- mov r2, r9
- subs r1, r2, r6
- lsls r1, 2
- adds r0, r1
- ldr r4, _08152354 @ =0x000031d4
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _08152284
- mov r0, r10
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- ldr r0, [sp, 0x4]
- cmp r10, r0
- bcc _081521E6
-_08152284:
- ldr r1, [sp, 0xC]
- lsls r0, r1, 24
- lsrs r6, r0, 24
- ldr r2, [sp, 0x8]
- cmp r6, r2
- bcc _081521B0
-_08152290:
- ldr r4, [sp]
- mov r10, r4
- ldr r0, [sp, 0x4]
- cmp r10, r0
- bcc _0815229C
- b _08152464
-_0815229C:
- ldr r1, _08152358 @ =gUnknown_203F3E0
- mov r9, r1
-_081522A0:
- movs r6, 0xFF
- ldr r0, _0815235C @ =sUnknown_8471F50
- add r0, r10
- ldrb r5, [r0]
- mov r2, r9
- ldr r0, [r2]
- adds r0, 0xC4
- adds r0, r5
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _081522B8
- b _08152452
-_081522B8:
- adds r0, r5, 0
- bl sub_8152BD4
- mov r1, r9
- ldr r4, [r1]
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, 0
- adds r1, 0x90
- adds r1, r0
- ldrb r0, [r1]
- movs r1, 0x7
- bl __udivsi3
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x1
- bls _081522DE
- movs r3, 0x2
-_081522DE:
- ldr r2, _08152360 @ =sUnknown_847553C
- ldr r0, _08152364 @ =0x000031b4
- adds r1, r4, r0
- adds r1, r5
- lsls r0, r3, 1
- adds r0, r3
- ldrb r1, [r1]
- adds r0, r1
- adds r0, r2
- ldrb r1, [r0]
- adds r0, r4, 0
- adds r0, 0xD0
- adds r0, r5
- ldrb r0, [r0]
- subs r2, r1, r0
- cmp r2, 0x5
- bgt _0815230C
- adds r1, r4, 0
- adds r1, 0x9C
- adds r1, r5
- ldrb r0, [r1]
- adds r0, r2
- strb r0, [r1]
-_0815230C:
- mov r2, r9
- ldr r1, [r2]
- adds r1, 0x9C
- adds r1, r5
- ldrb r0, [r1]
- adds r0, 0x1
- movs r2, 0
- strb r0, [r1]
- movs r4, 0xFF
- ands r0, r4
- cmp r0, 0x5
- bhi _08152326
- b _08152452
-_08152326:
- mov r1, r9
- ldr r0, [r1]
- adds r0, 0x9C
- adds r0, r5
- strb r2, [r0]
- ldr r3, [r1]
- lsls r1, r5, 1
- adds r0, r3, 0
- adds r0, 0xF4
- adds r2, r0, r1
- ldrb r0, [r2]
- mov r8, r1
- cmp r0, 0xFF
- bne _08152368
- adds r0, r3, 0
- adds r0, 0xF5
- add r0, r8
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _08152350
- b _08152452
-_08152350:
- b _08152378
- .align 2, 0
-_08152354: .4byte 0x000031d4
-_08152358: .4byte gUnknown_203F3E0
-_0815235C: .4byte sUnknown_8471F50
-_08152360: .4byte sUnknown_847553C
-_08152364: .4byte 0x000031b4
-_08152368:
- adds r0, r3, 0
- adds r0, 0xF5
- add r0, r8
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _08152378
- ldrb r4, [r2]
- b _0815239E
-_08152378:
- mov r2, r9
- ldr r1, [r2]
- adds r0, r1, 0
- adds r0, 0xF4
- add r0, r8
- ldrb r7, [r0]
- adds r1, 0xF5
- add r1, r8
- ldrb r6, [r1]
- bl Random
- movs r1, 0x1
- ands r1, r0
- cmp r1, 0
- bne _0815239A
- adds r4, r7, 0
- b _0815239E
-_0815239A:
- adds r4, r6, 0
- adds r6, r7, 0
-_0815239E:
- mov r1, r9
- ldr r0, [r1]
- ldr r2, _08152474 @ =0x000032eb
- adds r0, r2
- adds r0, r5
- movs r1, 0x7
- strb r1, [r0]
- mov r1, r9
- ldr r0, [r1]
- adds r0, 0xC4
- adds r0, r5
- movs r1, 0x2
- strb r1, [r0]
- mov r2, r9
- ldr r0, [r2]
- adds r0, 0xA8
- adds r0, r4
- movs r1, 0x3
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0xB8
- adds r0, r5
- strb r4, [r0]
- ldr r1, [r2]
- lsls r0, r4, 4
- subs r0, r4
- lsls r0, 2
- adds r1, r0
- ldr r2, _08152478 @ =0x000031d0
- adds r1, r2
- movs r0, 0x1
- strb r0, [r1]
- mov r2, r9
- ldr r1, [r2]
- lsls r0, r6, 4
- subs r0, r6
- lsls r0, 2
- adds r1, r0
- ldr r0, _0815247C @ =0x000031d4
- adds r1, r0
- movs r2, 0x1
- strb r2, [r1]
- mov r0, r9
- ldr r1, [r0]
- lsls r0, r4, 1
- adds r1, 0x86
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- movs r0, 0
- adds r1, r5, 0
- adds r2, r4, 0
- bl sub_8152D34
- movs r0, 0x1
- bl sub_8152F94
- adds r0, r4, 0
- bl sub_8152B64
- mov r1, r9
- ldr r0, [r1]
- adds r1, r0, 0
- adds r1, 0xE8
- adds r1, r5
- ldr r2, _08152480 @ =0x000032e0
- adds r0, r2
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1]
- mov r4, r9
- ldr r0, [r4]
- adds r0, r2
- adds r0, r5
- movs r1, 0x3
- strb r1, [r0]
- ldr r1, [r4]
- adds r1, 0xF4
- add r1, r8
- ldrb r0, [r1]
- movs r2, 0xFF
- orrs r0, r2
- strb r0, [r1]
- ldr r1, [r4]
- adds r1, 0xF5
- add r1, r8
- ldrb r0, [r1]
- orrs r0, r2
- strb r0, [r1]
-_08152452:
- mov r0, r10
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- ldr r4, [sp, 0x4]
- cmp r10, r4
- bcs _08152464
- b _081522A0
-_08152464:
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08152474: .4byte 0x000032eb
-_08152478: .4byte 0x000031d0
-_0815247C: .4byte 0x000031d4
-_08152480: .4byte 0x000032e0
- thumb_func_end sub_8152174
-
- thumb_func_start sub_8152484
-sub_8152484: @ 8152484
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r3, r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- movs r7, 0
- ldr r2, _081524B8 @ =gUnknown_203F3E0
- ldr r1, [r2]
- adds r0, r1, 0
- adds r0, 0x24
- ldrb r0, [r0]
- subs r0, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _081524BC @ =0x000032e0
- adds r1, r0
- mov r12, r2
- cmp r3, 0x2
- beq _081524C0
- cmp r3, 0x2
- bgt _081524C6
- cmp r3, 0x1
- beq _081524C4
- b _081524C6
- .align 2, 0
-_081524B8: .4byte gUnknown_203F3E0
-_081524BC: .4byte 0x000032e0
-_081524C0:
- movs r7, 0x1
- b _081524C6
-_081524C4:
- movs r7, 0x2
-_081524C6:
- adds r0, r1, 0
- adds r0, 0xB
- adds r0, r6
- ldrb r0, [r0]
- subs r0, 0x6
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _08152524
- ldr r0, _08152518 @ =sUnknown_8472063
- lsls r1, r4, 1
- adds r1, r4
- adds r1, r7, r1
- lsls r2, r5, 4
- subs r2, r5
- adds r1, r2
- adds r1, r0
- ldrb r1, [r1]
- cmp r6, r1
- bne _0815255A
- mov r0, r12
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0xC4
- adds r0, r6
- ldrb r0, [r0]
- subs r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _08152520
- lsls r0, r4, 4
- subs r0, r4
- lsls r0, 2
- adds r0, r1, r0
- ldr r1, _0815251C @ =0x000031d4
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- b _0815255A
- .align 2, 0
-_08152518: .4byte sUnknown_8472063
-_0815251C: .4byte 0x000031d4
-_08152520:
- movs r0, 0x1
- b _0815255C
-_08152524:
- ldr r0, _08152564 @ =sUnknown_8472063
- lsls r1, r4, 1
- adds r1, r4
- adds r1, r7, r1
- lsls r2, r5, 4
- subs r2, r5
- adds r1, r2
- adds r1, r0
- ldrb r1, [r1]
- cmp r6, r1
- bne _0815255A
- mov r1, r12
- ldr r0, [r1]
- adds r0, 0xA8
- adds r0, r4
- movs r1, 0x4
- strb r1, [r0]
- mov r0, r12
- ldr r1, [r0]
- lsls r0, r4, 4
- subs r0, r4
- lsls r0, 2
- adds r1, r0
- ldr r0, _08152568 @ =0x000031d4
- adds r1, r0
- movs r0, 0x1
- strb r0, [r1]
-_0815255A:
- movs r0, 0
-_0815255C:
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_08152564: .4byte sUnknown_8472063
-_08152568: .4byte 0x000031d4
- thumb_func_end sub_8152484
-
- thumb_func_start sub_815256C
-sub_815256C: @ 815256C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r2, _08152640 @ =gUnknown_203F3E0
- ldr r4, [r2]
- adds r0, r4, 0
- adds r0, 0x44
- ldrb r1, [r0]
- adds r0, 0x4
- ldrb r0, [r0]
- mov r9, r0
- movs r3, 0
- mov r10, r3
- movs r5, 0x90
- lsls r5, 1
- adds r0, r4, r5
- str r3, [r0]
- adds r5, r1, 0
- mov r0, r9
- subs r0, 0x1
- cmp r5, r0
- blt _0815259E
- b _081527BC
-_0815259E:
- mov r8, r2
-_081525A0:
- mov r0, r8
- ldr r4, [r0]
- adds r0, r4, 0
- adds r0, 0xC4
- adds r0, r5
- ldrb r0, [r0]
- cmp r0, 0x1
- bls _081525B2
- b _081526BC
-_081525B2:
- movs r1, 0x90
- lsls r1, 1
- adds r0, r4, r1
- movs r2, 0x1
- str r2, [r0]
- ldr r1, _08152644 @ =0x000032eb
- adds r0, r4, r1
- adds r6, r0, r5
- ldrb r0, [r6]
- cmp r0, 0x9
- bls _0815264C
- movs r7, 0
- movs r0, 0xA
- strb r0, [r6]
- mov r1, r8
- ldr r0, [r1]
- adds r0, 0xC4
- adds r0, r5
- movs r1, 0x3
- strb r1, [r0]
- mov r1, r8
- ldr r0, [r1]
- movs r6, 0xA4
- lsls r6, 1
- adds r0, r6
- adds r1, r0, r5
- ldrb r0, [r1]
- cmp r0, 0
- bne _081525FC
- strb r2, [r1]
- ldr r2, _08152648 @ =0x000032e0
- adds r0, r4, r2
- adds r0, r5
- ldrb r0, [r0]
- adds r0, 0x43
- bl PlaySE
-_081525FC:
- mov r0, r8
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x40
- ldrb r0, [r0]
- cmp r0, 0x9
- bls _08152612
- mov r2, r10
- cmp r2, 0x1
- beq _08152612
- b _081527AC
-_08152612:
- movs r0, 0x1
- mov r10, r0
- adds r0, r1, r6
- adds r0, r5
- strb r7, [r0]
- mov r1, r8
- ldr r0, [r1]
- adds r1, r0, 0
- adds r1, 0x40
- ldrb r0, [r1]
- cmp r0, 0x9
- bhi _0815262E
- adds r0, 0x1
- strb r0, [r1]
-_0815262E:
- movs r0, 0x3
- adds r1, r5, 0
- movs r2, 0
- bl sub_8152D34
- movs r0, 0
- bl sub_8152F94
- b _081527AC
- .align 2, 0
-_08152640: .4byte gUnknown_203F3E0
-_08152644: .4byte 0x000032eb
-_08152648: .4byte 0x000032e0
-_0815264C:
- adds r0, r5, 0
- bl sub_8152BD4
- mov r2, r8
- ldr r7, [r2]
- lsls r0, 24
- lsrs r0, 24
- adds r1, r7, 0
- adds r1, 0x90
- adds r1, r0
- ldrb r0, [r1]
- movs r1, 0x7
- bl __udivsi3
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x1
- bls _08152672
- movs r3, 0x2
-_08152672:
- ldr r2, _081526B4 @ =sUnknown_847553C
- ldr r0, _081526B8 @ =0x000032e0
- adds r1, r4, r0
- adds r1, r5
- lsls r0, r3, 1
- adds r0, r3
- ldrb r1, [r1]
- adds r0, r1
- adds r0, r2
- ldrb r2, [r0]
- adds r1, r7, 0
- adds r1, 0xD0
- adds r1, r5
- ldrb r0, [r1]
- adds r0, 0x1
- movs r3, 0
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, r2
- bcc _081526AC
- ldrb r0, [r6]
- adds r0, 0x1
- strb r0, [r6]
- mov r1, r8
- ldr r0, [r1]
- adds r0, 0xD0
- adds r0, r5
- strb r3, [r0]
-_081526AC:
- bl sub_8152174
- b _081527AC
- .align 2, 0
-_081526B4: .4byte sUnknown_847553C
-_081526B8: .4byte 0x000032e0
-_081526BC:
- cmp r0, 0x2
- bne _0815273C
- adds r1, r4, 0
- adds r1, 0xDC
- adds r1, r5
- ldrb r0, [r1]
- adds r0, 0x1
- movs r3, 0
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x13
- bls _081527AC
- mov r0, r8
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0xB8
- adds r0, r5
- ldrb r1, [r0]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 2
- adds r2, r0
- ldr r1, _08152730 @ =0x000031d0
- adds r2, r1
- strb r3, [r2]
- mov r2, r8
- ldr r0, [r2]
- adds r0, 0xDC
- adds r0, r5
- strb r3, [r0]
- ldr r0, [r2]
- adds r0, 0xD0
- adds r0, r5
- strb r3, [r0]
- ldr r0, [r2]
- adds r0, 0xC4
- adds r0, r5
- strb r3, [r0]
- ldr r1, _08152734 @ =0x000032eb
- adds r0, r4, r1
- adds r0, r5
- movs r1, 0x1
- strb r1, [r0]
- adds r0, r5, 0
- bl sub_8152BD4
- lsls r0, 24
- lsrs r0, 24
- adds r1, r5, 0
- bl sub_8152BF8
- ldr r2, _08152738 @ =0x000032e0
- adds r1, r4, r2
- adds r1, r5
- strb r0, [r1]
- b _081527AC
- .align 2, 0
-_08152730: .4byte 0x000031d0
-_08152734: .4byte 0x000032eb
-_08152738: .4byte 0x000032e0
-_0815273C:
- cmp r0, 0x3
- bne _081527AC
- adds r1, r4, 0
- adds r1, 0xDC
- adds r1, r5
- ldrb r0, [r1]
- adds r0, 0x1
- movs r2, 0
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x13
- bls _081527AC
- mov r0, r8
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x40
- ldrb r0, [r0]
- cmp r0, 0x9
- bhi _081527AC
- adds r0, r1, 0
- adds r0, 0xDC
- adds r0, r5
- strb r2, [r0]
- mov r1, r8
- ldr r0, [r1]
- adds r0, 0xD0
- adds r0, r5
- strb r2, [r0]
- ldr r0, [r1]
- adds r0, 0xC4
- adds r0, r5
- strb r2, [r0]
- ldr r2, _081527CC @ =0x000032eb
- adds r0, r4, r2
- adds r0, r5
- movs r1, 0x1
- strb r1, [r0]
- mov r0, r8
- ldr r1, [r0]
- adds r1, 0xE8
- adds r1, r5
- subs r2, 0xB
- adds r4, r2
- adds r4, r5
- ldrb r0, [r4]
- strb r0, [r1]
- adds r0, r5, 0
- bl sub_8152BD4
- lsls r0, 24
- lsrs r0, 24
- adds r1, r5, 0
- bl sub_8152BF8
- strb r0, [r4]
-_081527AC:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- mov r0, r9
- subs r0, 0x1
- cmp r5, r0
- bge _081527BC
- b _081525A0
-_081527BC:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081527CC: .4byte 0x000032eb
- thumb_func_end sub_815256C
-
- thumb_func_start sub_81527D0
-sub_81527D0: @ 81527D0
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r0, _08152838 @ =gUnknown_203F3E0
- ldr r0, [r0]
- adds r1, r0, 0
- adds r1, 0x44
- adds r0, 0x48
- ldrb r0, [r0]
- mov r8, r0
- ldrb r6, [r1]
- cmp r6, r8
- bcs _081528C2
- ldr r0, _0815283C @ =sUnknown_8471F50
- mov r9, r0
-_081527F0:
- ldr r0, _08152838 @ =gUnknown_203F3E0
- ldr r3, [r0]
- adds r0, r3, 0
- adds r0, 0x28
- ldrb r1, [r0]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 2
- ldr r2, _08152840 @ =0x000031a0
- adds r0, r2
- adds r7, r3, r0
- movs r0, 0xB
- adds r2, r1, 0
- muls r2, r0
- adds r2, r6, r2
- adds r3, 0x24
- ldrb r1, [r3]
- subs r1, 0x1
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 3
- subs r0, r1
- adds r2, r0
- add r2, r9
- ldrb r4, [r2]
- adds r0, r7, 0
- adds r0, 0x1F
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- beq _08152844
- adds r0, r6, 0
- movs r1, 0
- bl sub_81542EC
- b _0815284C
- .align 2, 0
-_08152838: .4byte gUnknown_203F3E0
-_0815283C: .4byte sUnknown_8471F50
-_08152840: .4byte 0x000031a0
-_08152844:
- adds r0, r6, 0
- movs r1, 0x1
- bl sub_81542EC
-_0815284C:
- adds r0, r7, 0
- adds r0, 0x1F
- adds r5, r0, r4
- ldrb r0, [r5]
- cmp r0, 0x9
- bls _08152878
- adds r0, r7, 0
- adds r0, 0x14
- adds r0, r4
- ldrb r1, [r0]
- adds r1, 0x3
- lsls r1, 24
- lsrs r1, 24
- adds r0, r6, 0
- bl sub_8154398
- ldrb r1, [r5]
- lsls r1, 25
- movs r0, 0xFF
- lsls r0, 24
- adds r1, r0
- b _0815289A
-_08152878:
- adds r0, r7, 0
- adds r0, 0x14
- adds r3, r0, r4
- ldrb r0, [r3]
- cmp r0, 0x3
- bne _081528A4
- movs r0, 0x7
- strb r0, [r5]
- adds r0, r6, 0
- movs r1, 0x6
- bl sub_8154398
- ldrb r1, [r5]
- lsls r1, 25
- movs r2, 0xFF
- lsls r2, 24
- adds r1, r2
-_0815289A:
- lsrs r1, 24
- adds r0, r6, 0
- bl sub_8154370
- b _081528B8
-_081528A4:
- ldrb r1, [r3]
- adds r0, r6, 0
- bl sub_8154398
- ldrb r1, [r5]
- lsls r1, 25
- lsrs r1, 24
- adds r0, r6, 0
- bl sub_8154370
-_081528B8:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, r8
- bcc _081527F0
-_081528C2:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81527D0
-
- thumb_func_start sub_81528D0
-sub_81528D0: @ 81528D0
- push {r4-r6,lr}
- ldr r1, _08152908 @ =gUnknown_203F3E0
- ldr r0, [r1]
- adds r0, 0x24
- ldrb r5, [r0]
- movs r4, 0
- cmp r4, r5
- bcs _08152902
- adds r6, r1, 0
-_081528E2:
- lsls r0, r4, 4
- subs r0, r4
- lsls r0, 2
- ldr r1, [r6]
- adds r0, r1
- ldr r1, _0815290C @ =0x000031cc
- adds r0, r1
- ldrb r1, [r0]
- adds r0, r4, 0
- bl sub_8153DA8
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r5
- bcc _081528E2
-_08152902:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08152908: .4byte gUnknown_203F3E0
-_0815290C: .4byte 0x000031cc
- thumb_func_end sub_81528D0
-
- thumb_func_start sub_8152910
-sub_8152910: @ 8152910
- push {r4,r5,lr}
- ldr r0, _08152938 @ =gUnknown_203F3E0
- ldr r0, [r0]
- adds r0, 0x24
- ldrb r5, [r0]
- movs r4, 0
- cmp r4, r5
- bcs _08152932
-_08152920:
- adds r0, r4, 0
- movs r1, 0x4
- bl sub_8153DA8
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r5
- bcc _08152920
-_08152932:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08152938: .4byte gUnknown_203F3E0
- thumb_func_end sub_8152910
-
- thumb_func_start sub_815293C
-sub_815293C: @ 815293C
- push {lr}
- bl sub_81527D0
- ldr r0, _08152954 @ =gUnknown_203F3E0
- ldr r0, [r0]
- adds r0, 0x40
- ldrb r0, [r0]
- cmp r0, 0x9
- bls _08152958
- bl sub_8152910
- b _0815295C
- .align 2, 0
-_08152954: .4byte gUnknown_203F3E0
-_08152958:
- bl sub_81528D0
-_0815295C:
- ldr r0, _0815296C @ =gUnknown_203F3E0
- ldr r0, [r0]
- adds r0, 0x40
- ldrb r0, [r0]
- bl sub_8153FC8
- pop {r0}
- bx r0
- .align 2, 0
-_0815296C: .4byte gUnknown_203F3E0
- thumb_func_end sub_815293C
-
- thumb_func_start sub_8152970
-sub_8152970: @ 8152970
- push {lr}
- bl sub_81527D0
- ldr r0, _08152988 @ =gUnknown_203F3E0
- ldr r0, [r0]
- adds r0, 0x40
- ldrb r0, [r0]
- cmp r0, 0x9
- bls _0815298C
- bl sub_8152910
- b _08152990
- .align 2, 0
-_08152988: .4byte gUnknown_203F3E0
-_0815298C:
- bl sub_81528D0
-_08152990:
- ldr r0, _081529A0 @ =gUnknown_203F3E0
- ldr r0, [r0]
- adds r0, 0x40
- ldrb r0, [r0]
- bl sub_8153FC8
- pop {r0}
- bx r0
- .align 2, 0
-_081529A0: .4byte gUnknown_203F3E0
- thumb_func_end sub_8152970
-
- thumb_func_start sub_81529A4
-sub_81529A4: @ 81529A4
- push {lr}
- adds r3, r1, 0
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x1
- cmp r0, 0x4
- bhi _081529FC
- lsls r0, 2
- ldr r1, _081529BC @ =_081529C0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_081529BC: .4byte _081529C0
- .align 2, 0
-_081529C0:
- .4byte _081529D4
- .4byte _081529DC
- .4byte _081529E4
- .4byte _081529EC
- .4byte _081529F4
-_081529D4:
- movs r0, 0x4
- strb r0, [r3]
- movs r0, 0x7
- b _081529FA
-_081529DC:
- movs r0, 0x3
- strb r0, [r3]
- movs r0, 0x8
- b _081529FA
-_081529E4:
- movs r0, 0x2
- strb r0, [r3]
- movs r0, 0x9
- b _081529FA
-_081529EC:
- movs r0, 0x1
- strb r0, [r3]
- movs r0, 0xA
- b _081529FA
-_081529F4:
- movs r0, 0
- strb r0, [r3]
- movs r0, 0xB
-_081529FA:
- strb r0, [r2]
-_081529FC:
- pop {r0}
- bx r0
- thumb_func_end sub_81529A4
-
- thumb_func_start sub_8152A00
-sub_8152A00: @ 8152A00
- push {r4-r6,lr}
- ldr r1, _08152A58 @ =gUnknown_203F3E0
- ldr r0, [r1]
- adds r0, 0x24
- ldrb r5, [r0]
- movs r4, 0x1
- cmp r4, r5
- bcs _08152A66
- adds r6, r1, 0
-_08152A12:
- ldr r0, [r6]
- movs r1, 0xAC
- lsls r1, 1
- adds r0, r1
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _08152A34
- adds r0, r4, 0
- bl sub_815A5E8
- ldr r1, [r6]
- movs r2, 0xAC
- lsls r2, 1
- adds r1, r2
- adds r1, r4
- strb r0, [r1]
-_08152A34:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r5
- bcc _08152A12
- cmp r4, r5
- bcs _08152A66
- ldr r0, _08152A58 @ =gUnknown_203F3E0
- ldr r0, [r0]
- movs r2, 0xAC
- lsls r2, 1
- adds r1, r0, r2
-_08152A4C:
- adds r0, r1, r4
- ldrb r0, [r0]
- cmp r0, 0
- bne _08152A5C
- movs r0, 0
- b _08152A68
- .align 2, 0
-_08152A58: .4byte gUnknown_203F3E0
-_08152A5C:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r5
- bcc _08152A4C
-_08152A66:
- movs r0, 0x1
-_08152A68:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8152A00
-
- thumb_func_start sub_8152A70
-sub_8152A70: @ 8152A70
- push {r4,lr}
- movs r1, 0
- ldr r4, _08152A94 @ =gUnknown_203F3E0
- movs r3, 0xAC
- lsls r3, 1
- movs r2, 0
-_08152A7C:
- ldr r0, [r4]
- adds r0, r3
- adds r0, r1
- strb r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x4
- bls _08152A7C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08152A94: .4byte gUnknown_203F3E0
- thumb_func_end sub_8152A70
-
- thumb_func_start sub_8152A98
-sub_8152A98: @ 8152A98
- push {r4,lr}
- ldr r3, _08152ACC @ =gUnknown_203F3E0
- ldr r1, [r3]
- adds r2, r1, 0
- adds r2, 0x40
- ldrb r0, [r2]
- cmp r0, 0x9
- bls _08152AD0
- movs r4, 0x90
- lsls r4, 1
- adds r0, r1, r4
- ldr r0, [r0]
- cmp r0, 0
- bne _08152AD0
- movs r0, 0xA
- strb r0, [r2]
- ldr r0, [r3]
- movs r1, 0x96
- lsls r1, 1
- adds r0, r1
- ldr r0, [r0]
- cmp r0, 0
- beq _08152AD0
- movs r0, 0x1
- b _08152AD2
- .align 2, 0
-_08152ACC: .4byte gUnknown_203F3E0
-_08152AD0:
- movs r0, 0
-_08152AD2:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8152A98
-
- thumb_func_start sub_8152AD8
-sub_8152AD8: @ 8152AD8
- push {r4-r6,lr}
- ldr r4, _08152B50 @ =gUnknown_203F3E0
- ldr r1, [r4]
- adds r2, r1, 0
- adds r2, 0x40
- ldrb r0, [r2]
- cmp r0, 0x9
- bls _08152B5C
- adds r0, r1, 0
- adds r0, 0x44
- ldrb r3, [r0]
- adds r0, 0x4
- ldrb r5, [r0]
- movs r0, 0xA
- strb r0, [r2]
- ldr r4, [r4]
- mov r12, r4
- movs r0, 0x96
- lsls r0, 1
- add r0, r12
- ldr r0, [r0]
- cmp r0, 0
- beq _08152B5C
- adds r4, r3, 0
- cmp r4, r5
- bcs _08152B4C
- mov r0, r12
- adds r0, 0x28
- ldrb r3, [r0]
- lsls r1, r3, 4
- subs r1, r3
- lsls r1, 2
- ldr r6, _08152B54 @ =sUnknown_8471F50
- subs r0, 0x4
- ldrb r2, [r0]
- subs r2, 0x1
- add r1, r12
- movs r0, 0xB
- muls r3, r0
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 3
- subs r2, r0, r2
- ldr r0, _08152B58 @ =0x000031bf
- adds r1, r0
-_08152B32:
- adds r0, r4, r3
- adds r0, r2
- adds r0, r6
- ldrb r0, [r0]
- adds r0, r1, r0
- ldrb r0, [r0]
- cmp r0, 0xA
- bne _08152B5C
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r5
- bcc _08152B32
-_08152B4C:
- movs r0, 0x1
- b _08152B5E
- .align 2, 0
-_08152B50: .4byte gUnknown_203F3E0
-_08152B54: .4byte sUnknown_8471F50
-_08152B58: .4byte 0x000031bf
-_08152B5C:
- movs r0, 0
-_08152B5E:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8152AD8
-
- thumb_func_start sub_8152B64
-sub_8152B64: @ 8152B64
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r0, _08152BCC @ =sUnknown_8475550
- mov r8, r0
- ldr r0, _08152BD0 @ =gUnknown_203F3E0
- ldr r6, [r0]
- adds r0, r6, 0
- adds r0, 0x90
- adds r0, r5
- mov r9, r0
- ldrb r7, [r0]
- adds r0, r7, 0
- movs r1, 0x7
- bl __umodsi3
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- add r4, r8
- adds r0, r7, 0
- movs r1, 0x7
- bl __udivsi3
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldrb r4, [r4]
- adds r0, r4
- lsls r0, 24
- lsls r5, 1
- adds r6, 0x86
- adds r6, r5
- ldrh r1, [r6]
- lsrs r0, 24
- cmp r1, r0
- bcc _08152BBE
- adds r0, r7, 0x1
- mov r1, r9
- strb r0, [r1]
-_08152BBE:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08152BCC: .4byte sUnknown_8475550
-_08152BD0: .4byte gUnknown_203F3E0
- thumb_func_end sub_8152B64
-
- thumb_func_start sub_8152BD4
-sub_8152BD4: @ 8152BD4
- lsls r0, 24
- lsrs r0, 24
- ldr r3, _08152BF0 @ =sUnknown_84720FC
- ldr r1, _08152BF4 @ =gUnknown_203F3E0
- ldr r1, [r1]
- adds r1, 0x24
- ldrb r1, [r1]
- subs r1, 0x1
- movs r2, 0xB
- muls r1, r2
- adds r0, r1
- adds r0, r3
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_08152BF0: .4byte sUnknown_84720FC
-_08152BF4: .4byte gUnknown_203F3E0
- thumb_func_end sub_8152BD4
-
- thumb_func_start sub_8152BF8
-sub_8152BF8: @ 8152BF8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r4, _08152C78 @ =gUnknown_203F3E0
- ldr r1, [r4]
- adds r1, 0x24
- ldrb r2, [r1]
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- ldr r3, _08152C7C @ =sUnknown_84720AE
- lsls r1, r0, 1
- adds r1, r0
- lsls r0, r2, 4
- subs r0, r2
- adds r1, r0
- adds r0, r1, r3
- ldrb r0, [r0]
- mov r12, r0
- adds r0, r3, 0x1
- adds r0, r1, r0
- ldrb r7, [r0]
- adds r3, 0x2
- adds r1, r3
- ldrb r1, [r1]
- mov r8, r1
- movs r3, 0
- ldr r1, _08152C80 @ =sUnknown_8472133
- lsls r0, r2, 2
- adds r2, r0, r2
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _08152C60
- adds r6, r1, 0
-_08152C46:
- adds r0, r3, r2
- adds r0, r6
- ldrb r0, [r0]
- cmp r5, r0
- beq _08152C84
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- adds r0, r3, r2
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _08152C46
-_08152C60:
- ldr r0, [r4]
- adds r0, 0x90
- mov r1, r12
- adds r2, r0, r1
- adds r1, r0, r7
- ldrb r0, [r2]
- ldrb r3, [r1]
- cmp r0, r3
- bls _08152C8E
- adds r1, r0, 0
- b _08152C90
- .align 2, 0
-_08152C78: .4byte gUnknown_203F3E0
-_08152C7C: .4byte sUnknown_84720AE
-_08152C80: .4byte sUnknown_8472133
-_08152C84:
- ldr r0, [r4]
- adds r0, 0x90
- adds r0, r7
- ldrb r0, [r0]
- b _08152CA2
-_08152C8E:
- ldrb r1, [r1]
-_08152C90:
- ldr r0, [r4]
- adds r0, 0x90
- mov r2, r8
- adds r4, r0, r2
- ldrb r0, [r4]
- cmp r0, r1
- bls _08152CA0
- adds r1, r0, 0
-_08152CA0:
- adds r0, r1, 0
-_08152CA2:
- adds r1, r5, 0
- bl sub_8152CB8
- lsls r0, 24
- lsrs r0, 24
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8152BF8
-
- thumb_func_start sub_8152CB8
-sub_8152CB8: @ 8152CB8
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r2, _08152CE4 @ =gUnknown_203F3E0
- ldr r2, [r2]
- adds r2, 0xE8
- adds r2, r1
- ldrb r4, [r2]
- movs r1, 0x7
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x6
- bhi _08152D26
- lsls r0, 2
- ldr r1, _08152CE8 @ =_08152CEC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08152CE4: .4byte gUnknown_203F3E0
-_08152CE8: .4byte _08152CEC
- .align 2, 0
-_08152CEC:
- .4byte _08152D26
- .4byte _08152D1E
- .4byte _08152D2A
- .4byte _08152D08
- .4byte _08152D0E
- .4byte _08152D14
- .4byte _08152D1A
-_08152D08:
- cmp r4, 0
- beq _08152D1E
- b _08152D26
-_08152D0E:
- cmp r4, 0
- beq _08152D2A
- b _08152D26
-_08152D14:
- cmp r4, 0x2
- beq _08152D1E
- b _08152D2A
-_08152D1A:
- cmp r4, 0
- bne _08152D22
-_08152D1E:
- movs r0, 0x1
- b _08152D2C
-_08152D22:
- cmp r4, 0x1
- beq _08152D2A
-_08152D26:
- movs r0, 0
- b _08152D2C
-_08152D2A:
- movs r0, 0x2
-_08152D2C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8152CB8
-
- thumb_func_start sub_8152D34
-sub_8152D34: @ 8152D34
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r3, r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- ldr r1, _08152D60 @ =gUnknown_203F3E0
- ldr r2, [r1]
- adds r0, r2, 0
- adds r0, 0x24
- ldrb r0, [r0]
- adds r5, r1, 0
- cmp r4, 0
- bge _08152D54
- b _08152F8E
-_08152D54:
- cmp r4, 0x2
- ble _08152D64
- cmp r4, 0x3
- beq _08152D94
- b _08152F8E
- .align 2, 0
-_08152D60: .4byte gUnknown_203F3E0
-_08152D64:
- ldr r1, _08152D8C @ =0x000031b4
- adds r0, r2, r1
- adds r0, r3
- ldrb r4, [r0]
- lsls r4, 1
- lsls r0, r6, 1
- adds r0, r6
- lsls r0, 2
- adds r4, r0
- adds r0, r2, 0
- adds r0, 0x4A
- adds r0, r4
- ldrh r0, [r0]
- ldr r1, _08152D90 @ =0x00004e20
- bl sub_815378C
- ldr r1, [r5]
- adds r1, 0x4A
- adds r1, r4
- b _08152F8C
- .align 2, 0
-_08152D8C: .4byte 0x000031b4
-_08152D90: .4byte 0x00004e20
-_08152D94:
- cmp r0, 0x3
- bne _08152D9A
- b _08152EE0
-_08152D9A:
- cmp r0, 0x3
- bgt _08152DA6
- cmp r0, 0x2
- bne _08152DA4
- b _08152F4A
-_08152DA4:
- b _08152F8E
-_08152DA6:
- cmp r0, 0x4
- beq _08152E56
- cmp r0, 0x5
- beq _08152DB0
- b _08152F8E
-_08152DB0:
- cmp r3, 0x9
- bls _08152DB6
- b _08152F8E
-_08152DB6:
- lsls r0, r3, 2
- ldr r1, _08152DC0 @ =_08152DC4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08152DC0: .4byte _08152DC4
- .align 2, 0
-_08152DC4:
- .4byte _08152DEC
- .4byte _08152DFC
- .4byte _08152E02
- .4byte _08152E12
- .4byte _08152E18
- .4byte _08152E28
- .4byte _08152E2E
- .4byte _08152E3C
- .4byte _08152E40
- .4byte _08152E50
-_08152DEC:
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x68
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- adds r1, 0x74
- b _08152F88
-_08152DFC:
- ldr r1, [r5]
- adds r1, 0x74
- b _08152F88
-_08152E02:
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x74
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- adds r1, 0x80
- b _08152F88
-_08152E12:
- ldr r1, [r5]
- adds r1, 0x80
- b _08152F88
-_08152E18:
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x80
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- adds r1, 0x50
- b _08152F88
-_08152E28:
- ldr r1, [r5]
- adds r1, 0x50
- b _08152F88
-_08152E2E:
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x50
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- b _08152F86
-_08152E3C:
- ldr r1, [r5]
- b _08152F86
-_08152E40:
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x5C
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- adds r1, 0x68
- b _08152F88
-_08152E50:
- ldr r1, [r5]
- adds r1, 0x68
- b _08152F88
-_08152E56:
- subs r0, r3, 0x1
- cmp r0, 0x7
- bls _08152E5E
- b _08152F8E
-_08152E5E:
- lsls r0, 2
- ldr r1, _08152E68 @ =_08152E6C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08152E68: .4byte _08152E6C
- .align 2, 0
-_08152E6C:
- .4byte _08152E8C
- .4byte _08152E9C
- .4byte _08152EA2
- .4byte _08152EB2
- .4byte _08152EB8
- .4byte _08152EC6
- .4byte _08152ECA
- .4byte _08152EDA
-_08152E8C:
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x68
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- adds r1, 0x74
- b _08152F88
-_08152E9C:
- ldr r1, [r5]
- adds r1, 0x74
- b _08152F88
-_08152EA2:
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x74
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- adds r1, 0x50
- b _08152F88
-_08152EB2:
- ldr r1, [r5]
- adds r1, 0x50
- b _08152F88
-_08152EB8:
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x50
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- b _08152F86
-_08152EC6:
- ldr r1, [r5]
- b _08152F86
-_08152ECA:
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x5C
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- adds r1, 0x68
- b _08152F88
-_08152EDA:
- ldr r1, [r5]
- adds r1, 0x68
- b _08152F88
-_08152EE0:
- subs r0, r3, 0x2
- cmp r0, 0x5
- bhi _08152F8E
- lsls r0, 2
- ldr r1, _08152EF0 @ =_08152EF4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08152EF0: .4byte _08152EF4
- .align 2, 0
-_08152EF4:
- .4byte _08152F0C
- .4byte _08152F1C
- .4byte _08152F22
- .4byte _08152F32
- .4byte _08152F38
- .4byte _08152F46
-_08152F0C:
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x5C
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- adds r1, 0x68
- b _08152F88
-_08152F1C:
- ldr r1, [r5]
- adds r1, 0x68
- b _08152F88
-_08152F22:
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x68
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- adds r1, 0x50
- b _08152F88
-_08152F32:
- ldr r1, [r5]
- adds r1, 0x50
- b _08152F88
-_08152F38:
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x50
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- b _08152F86
-_08152F46:
- ldr r1, [r5]
- b _08152F86
-_08152F4A:
- cmp r3, 0x4
- beq _08152F70
- cmp r3, 0x4
- bgt _08152F58
- cmp r3, 0x3
- beq _08152F62
- b _08152F8E
-_08152F58:
- cmp r3, 0x5
- beq _08152F76
- cmp r3, 0x6
- beq _08152F84
- b _08152F8E
-_08152F62:
- adds r1, r2, 0
- adds r1, 0x50
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- adds r1, 0xC
- b _08152F88
-_08152F70:
- adds r1, r2, 0
- adds r1, 0x50
- b _08152F88
-_08152F76:
- adds r1, r2, 0
- adds r1, 0x50
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- adds r1, 0xC
- b _08152F88
-_08152F84:
- adds r1, r2, 0
-_08152F86:
- adds r1, 0x5C
-_08152F88:
- ldrh r0, [r1]
- adds r0, 0x1
-_08152F8C:
- strh r0, [r1]
-_08152F8E:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8152D34
-
- thumb_func_start sub_8152F94
-sub_8152F94: @ 8152F94
- push {r4,r5,lr}
- adds r1, r0, 0
- ldr r4, _08152FD8 @ =gUnknown_203F3E0
- ldr r3, [r4]
- adds r0, r3, 0
- adds r0, 0x24
- ldrb r0, [r0]
- cmp r0, 0x5
- bne _08152FFE
- cmp r1, 0x1
- bne _08152FE0
- movs r5, 0x89
- lsls r5, 1
- adds r1, r3, r5
- ldrh r0, [r1]
- adds r2, r0, 0x1
- strh r2, [r1]
- movs r0, 0x8A
- lsls r0, 1
- adds r1, r3, r0
- lsls r0, r2, 16
- lsrs r0, 16
- ldrh r3, [r1]
- cmp r0, r3
- bls _08152FC8
- strh r2, [r1]
-_08152FC8:
- ldr r0, [r4]
- adds r2, r0, r5
- ldrh r0, [r2]
- ldr r1, _08152FDC @ =0x0000270f
- cmp r0, r1
- bls _08152FFE
- strh r1, [r2]
- b _08152FFE
- .align 2, 0
-_08152FD8: .4byte gUnknown_203F3E0
-_08152FDC: .4byte 0x0000270f
-_08152FE0:
- movs r2, 0x89
- lsls r2, 1
- adds r0, r3, r2
- movs r5, 0x8A
- lsls r5, 1
- adds r1, r3, r5
- ldrh r0, [r0]
- ldrh r3, [r1]
- cmp r0, r3
- bls _08152FF6
- strh r0, [r1]
-_08152FF6:
- ldr r0, [r4]
- adds r0, r2
- movs r1, 0
- strh r1, [r0]
-_08152FFE:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8152F94
-
- thumb_func_start sub_8153004
-sub_8153004: @ 8153004
- push {r4,r5,lr}
- movs r3, 0
- ldr r2, _08153044 @ =gUnknown_203F3E0
- ldr r0, [r2]
- adds r0, 0x24
- ldrb r0, [r0]
- cmp r3, r0
- bcs _0815303C
- adds r5, r2, 0
- movs r4, 0x8A
- lsls r4, 1
-_0815301A:
- ldr r2, [r5]
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 2
- adds r1, r2, 0
- adds r1, 0x54
- adds r1, r0
- adds r0, r2, r4
- ldrh r0, [r0]
- strh r0, [r1]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- adds r2, 0x24
- ldrb r2, [r2]
- cmp r3, r2
- bcc _0815301A
-_0815303C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08153044: .4byte gUnknown_203F3E0
- thumb_func_end sub_8153004
-
- thumb_func_start sub_8153048
-sub_8153048: @ 8153048
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- movs r5, 0
- ldr r7, _08153138 @ =gUnknown_203F3E0
- movs r4, 0
- ldr r0, _0815313C @ =0x000031bf
- mov r10, r0
-_0815305C:
- movs r2, 0
- lsls r6, r5, 4
- lsls r1, r5, 1
- mov r8, r1
- lsls r0, r5, 3
- mov r12, r0
- adds r1, r5, 0x1
- mov r9, r1
- subs r0, r6, r5
- lsls r3, r0, 2
-_08153070:
- ldr r0, [r7]
- adds r1, r2, r3
- add r0, r10
- adds r0, r1
- strb r4, [r0]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xA
- bls _08153070
- ldr r0, [r7]
- subs r1, r6, r5
- lsls r1, 2
- adds r0, r1
- ldr r2, _08153140 @ =0x000031cc
- adds r0, r2
- strb r4, [r0]
- ldr r0, [r7]
- adds r0, r1
- ldr r1, _08153144 @ =0x000031d0
- adds r0, r1
- strb r4, [r0]
- ldr r0, [r7]
- adds r0, 0x90
- adds r0, r5
- strb r4, [r0]
- ldr r1, [r7]
- adds r0, r1, 0
- adds r0, 0x86
- add r0, r8
- strh r4, [r0]
- add r1, r12
- ldr r2, _08153148 @ =0x00003308
- adds r1, r2
- strb r4, [r1]
- ldr r2, [r7]
- ldr r1, _0815314C @ =0x0000330c
- adds r0, r2, r1
- add r0, r12
- str r4, [r0]
- mov r0, r8
- adds r1, r0, r5
- lsls r1, 2
- adds r0, r2, 0
- adds r0, 0x4A
- adds r0, r1
- strh r4, [r0]
- adds r0, r2, 0
- adds r0, 0x4C
- adds r0, r1
- strh r4, [r0]
- adds r0, r2, 0
- adds r0, 0x4E
- adds r0, r1
- strh r4, [r0]
- adds r0, r2, 0
- adds r0, 0x50
- adds r0, r1
- strh r4, [r0]
- adds r0, r2, 0
- adds r0, 0x52
- adds r0, r1
- strh r4, [r0]
- adds r0, r2, 0
- adds r0, 0x54
- adds r0, r1
- strh r4, [r0]
- mov r1, r9
- lsls r0, r1, 24
- lsrs r5, r0, 24
- cmp r5, 0x4
- bls _0815305C
- ldr r2, _08153138 @ =gUnknown_203F3E0
- ldr r0, [r2]
- movs r1, 0xAA
- lsls r1, 1
- adds r0, r1
- movs r2, 0
- strb r2, [r0]
- ldr r1, _08153138 @ =gUnknown_203F3E0
- ldr r0, [r1]
- movs r1, 0x89
- lsls r1, 1
- adds r3, r0, r1
- movs r1, 0
- strh r2, [r3]
- adds r0, 0x40
- strb r1, [r0]
- bl sub_81528D0
- bl sub_81527D0
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08153138: .4byte gUnknown_203F3E0
-_0815313C: .4byte 0x000031bf
-_08153140: .4byte 0x000031cc
-_08153144: .4byte 0x000031d0
-_08153148: .4byte 0x00003308
-_0815314C: .4byte 0x0000330c
- thumb_func_end sub_8153048
-
thumb_func_start sub_8153150
sub_8153150: @ 8153150
push {r4,r5,lr}
@@ -3938,8 +870,8 @@ _08153786:
bx r1
thumb_func_end sub_815372C
- thumb_func_start sub_815378C
-sub_815378C: @ 815378C
+ thumb_func_start IncrementWithLimit
+IncrementWithLimit: @ 815378C
push {lr}
adds r2, r0, 0
adds r0, r1, 0
@@ -3949,7 +881,7 @@ sub_815378C: @ 815378C
_08153798:
pop {r1}
bx r1
- thumb_func_end sub_815378C
+ thumb_func_end IncrementWithLimit
thumb_func_start sub_815379C
sub_815379C: @ 815379C