summaryrefslogtreecommitdiff
path: root/asm/wonder_mail.s
diff options
context:
space:
mode:
authorSeth Barberee <seth.barberee@gmail.com>2021-03-30 13:11:51 -0500
committerGitHub <noreply@github.com>2021-03-30 13:11:51 -0500
commita2d206665c6fffbd962375f262b7fbb05c7b7478 (patch)
tree6710109c4d9098b74da68ca8f18024d6c184ebc2 /asm/wonder_mail.s
parent2fd4f339b42c010191c199772b09ac34c580de94 (diff)
Move some data and Splitting (#32)
* move friend area settings to src * split out playtime into different C file and decomp a few more funcs * time -> play_time * fix include * split out more wonder mail stuff * unify 203B2C0 and unkDungeon structs. snuck in a decomp func too * split out more menu screens * work some more on trade items * doc a few more things * add a close nonmatch and decomp nullsub and small func * rollback struct attempt since it causes nonmatchings * only one func left in asm * death to trade_item asm and unify into one C file * more docing and cleanup * label main menu and trade items menu global menu struct * doc itemMode
Diffstat (limited to 'asm/wonder_mail.s')
-rw-r--r--asm/wonder_mail.s16651
1 files changed, 987 insertions, 15664 deletions
diff --git a/asm/wonder_mail.s b/asm/wonder_mail.s
index e5d1c87..af15e98 100644
--- a/asm/wonder_mail.s
+++ b/asm/wonder_mail.s
@@ -2,1244 +2,400 @@
.include "asm/macros.inc"
.syntax unified
+
+ .text
- .text
-
- thumb_func_start sub_802A50C
-sub_802A50C:
- push {r4,r5,lr}
- sub sp, 0x44
- bl sub_80154F0
- adds r4, r0, 0
- add r0, sp, 0x14
- movs r1, 0
- movs r2, 0x30
- bl MemoryFill8
- cmp r4, 0x2
- bne _0802A526
- b _0802A660
-_0802A526:
- cmp r4, 0x3
- beq _0802A52C
- b _0802A680
-_0802A52C:
- ldr r0, _0802A54C
- ldr r1, [r0]
- adds r1, 0x8
- movs r0, 0x20
- add r2, sp, 0x14
- bl sub_8039068
- subs r0, 0x7
- cmp r0, 0x11
- bls _0802A542
- b _0802A654
-_0802A542:
+ thumb_func_start sub_8028078
+sub_8028078:
+ push {lr}
+ ldr r0, _08028090
+ ldr r0, [r0]
+ ldr r0, [r0, 0x4]
+ cmp r0, 0x3C
+ bls _08028086
+ b _080282D4
+_08028086:
lsls r0, 2
- ldr r1, _0802A550
+ ldr r1, _08028094
adds r0, r1
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_0802A54C: .4byte gUnknown_203B2C4
-_0802A550: .4byte _0802A554
- .align 2, 0
-_0802A554:
- .4byte _0802A654
- .4byte _0802A654
- .4byte _0802A654
- .4byte _0802A654
- .4byte _0802A5F0
- .4byte _0802A654
- .4byte _0802A654
- .4byte _0802A654
- .4byte _0802A654
- .4byte _0802A654
- .4byte _0802A59C
- .4byte _0802A654
- .4byte _0802A654
- .4byte _0802A5D8
- .4byte _0802A654
- .4byte _0802A654
- .4byte _0802A654
- .4byte _0802A618
-_0802A59C:
- ldr r0, _0802A5CC
- ldr r3, _0802A5D0
- movs r2, 0
- str r2, [sp]
- movs r1, 0x4
- str r1, [sp, 0x4]
- str r2, [sp, 0x8]
- ldr r1, _0802A5D4
- ldr r1, [r1]
- movs r2, 0x84
- lsls r2, 3
- adds r1, r2
- str r1, [sp, 0xC]
- movs r1, 0xC
- str r1, [sp, 0x10]
- movs r1, 0
- movs r2, 0x7
- bl sub_8014248
- movs r0, 0x28
- bl sub_802B2BC
- b _0802A654
- .align 2, 0
-_0802A5CC: .4byte gUnknown_80DF1C0
-_0802A5D0: .4byte gUnknown_80DEE44
-_0802A5D4: .4byte gUnknown_203B2C4
-_0802A5D8:
- ldr r0, _0802A5E8
- ldr r1, _0802A5EC
- ldr r2, [r1]
- movs r3, 0x84
- lsls r3, 3
- adds r2, r3
- b _0802A5FC
- .align 2, 0
-_0802A5E8: .4byte gUnknown_80DF208
-_0802A5EC: .4byte gUnknown_203B2C4
-_0802A5F0:
- ldr r0, _0802A60C
- ldr r1, _0802A610
- ldr r2, [r1]
- movs r4, 0x84
- lsls r4, 3
- adds r2, r4
-_0802A5FC:
- ldr r3, _0802A614
- movs r1, 0
- bl sub_80141B4
- movs r0, 0x1F
- bl sub_802B2BC
- b _0802A654
- .align 2, 0
-_0802A60C: .4byte gUnknown_80DF0A0
-_0802A610: .4byte gUnknown_203B2C4
-_0802A614: .4byte 0x0000010d
-_0802A618:
- ldr r1, [sp, 0x24]
- movs r0, 0x4
- bl sub_809539C
- lsls r0, 24
- lsrs r0, 24
- bl sub_8095228
- adds r2, r0, 0
- add r1, sp, 0x14
- ldm r1!, {r3-r5}
- stm r2!, {r3-r5}
- ldm r1!, {r3-r5}
- stm r2!, {r3-r5}
- ldm r1!, {r3-r5}
- stm r2!, {r3-r5}
- ldm r1!, {r3-r5}
- stm r2!, {r3-r5}
- movs r1, 0x6
- strb r1, [r0]
- ldr r0, _0802A65C
- ldr r0, [r0]
- movs r5, 0x86
- lsls r5, 3
- adds r0, r5
- ldr r1, [sp, 0x24]
- str r1, [r0]
- movs r0, 0x21
- bl sub_802B2BC
-_0802A654:
- bl sub_80155F0
- b _0802A680
- .align 2, 0
-_0802A65C: .4byte gUnknown_203B2C4
-_0802A660:
- bl sub_80155F0
- bl ResetUnusedInputStruct
- ldr r0, _0802A688
- ldr r0, [r0]
- movs r1, 0xEF
- lsls r1, 2
- adds r0, r1
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- movs r0, 0x1
- bl sub_802B2BC
-_0802A680:
- add sp, 0x44
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802A688: .4byte gUnknown_203B2C4
- thumb_func_end sub_802A50C
-
- thumb_func_start sub_802A68C
-sub_802A68C:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A6AE
- bl sub_8012600
- lsls r0, 24
- cmp r0, 0
- bne _0802A6AE
- bl sub_8012750
- movs r0, 0xD
- bl sub_802B2BC
-_0802A6AE:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A68C
-
- thumb_func_start sub_802A6B4
-sub_802A6B4:
- push {r4,lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A6E8
- bl sub_8012600
- lsls r0, 24
- cmp r0, 0
- bne _0802A6E8
- bl sub_8012744
- adds r4, r0, 0
- bl sub_8012750
- cmp r4, 0
- bne _0802A6E2
- movs r0, 0x20
- bl sub_802B2BC
- b _0802A6E8
-_0802A6E2:
+_08028090: .4byte gUnknown_203B2C0
+_08028094: .4byte _08028098
+ .align 2, 0
+_08028098:
+ .4byte _080282C4
+ .4byte _080282C4
+ .4byte _080282CA
+ .4byte _080282D0
+ .4byte _08028222
+ .4byte _08028234
+ .4byte _08028228
+ .4byte _0802822E
+ .4byte _0802823A
+ .4byte _080281FE
+ .4byte _08028272
+ .4byte _08028278
+ .4byte _0802828C
+ .4byte _0802827E
+ .4byte _0802828C
+ .4byte _0802827E
+ .4byte _0802828C
+ .4byte _08028286
+ .4byte _08028294
+ .4byte _0802829A
+ .4byte _080282B2
+ .4byte _080282B8
+ .4byte _080282BE
+ .4byte _080282A0
+ .4byte _080282A6
+ .4byte _080282AC
+ .4byte _08028240
+ .4byte _08028248
+ .4byte _0802824E
+ .4byte _0802824E
+ .4byte _0802825A
+ .4byte _0802826C
+ .4byte _08028260
+ .4byte _08028266
+ .4byte _08028254
+ .4byte _08028204
+ .4byte _0802820A
+ .4byte _080282CA
+ .4byte _08028210
+ .4byte _08028216
+ .4byte _0802821C
+ .4byte _080281E0
+ .4byte _080281F2
+ .4byte _080281E6
+ .4byte _080281EC
+ .4byte _080281DA
+ .4byte _080281D4
+ .4byte _080281F8
+ .4byte _080281CE
+ .4byte _080281C2
+ .4byte _080281AA
+ .4byte _080281B0
+ .4byte _080281B6
+ .4byte _080281BC
+ .4byte _080281C8
+ .4byte _080281A4
+ .4byte _0802819E
+ .4byte _080282CA
+ .4byte _08028192
+ .4byte _08028198
+ .4byte _0802818C
+_0802818C:
+ bl sub_8029B34
+ b _080282D4
+_08028192:
+ bl sub_8029AD8
+ b _080282D4
+_08028198:
+ bl sub_8029AF4
+ b _080282D4
+_0802819E:
+ bl sub_8029A88
+ b _080282D4
+_080281A4:
+ bl sub_8029AB0
+ b _080282D4
+_080281AA:
+ bl sub_80297B8
+ b _080282D4
+_080281B0:
+ bl sub_80297D4
+ b _080282D4
+_080281B6:
+ bl sub_8029884
+ b _080282D4
+_080281BC:
+ bl sub_8029944
+ b _080282D4
+_080281C2:
+ bl sub_80299AC
+ b _080282D4
+_080281C8:
+ bl sub_80299D8
+ b _080282D4
+_080281CE:
+ bl sub_8029A6C
+ b _080282D4
+_080281D4:
+ bl sub_8029A18
+ b _080282D4
+_080281DA:
+ bl sub_80295A8
+ b _080282D4
+_080281E0:
+ bl sub_8029668
+ b _080282D4
+_080281E6:
+ bl sub_8029684
+ b _080282D4
+_080281EC:
+ bl sub_8029740
+ b _080282D4
+_080281F2:
+ bl sub_80295D8
+ b _080282D4
+_080281F8:
+ bl sub_802979C
+ b _080282D4
+_080281FE:
+ bl sub_8029358
+ b _080282D4
+_08028204:
+ bl sub_8029374
+ b _080282D4
+_0802820A:
+ bl sub_802939C
+ b _080282D4
+_08028210:
+ bl sub_80293D8
+ b _080282D4
+_08028216:
+ bl sub_80293F4
+ b _080282D4
+_0802821C:
+ bl sub_802955C
+ b _080282D4
+_08028222:
+ bl sub_80292A4
+ b _080282D4
+_08028228:
+ bl sub_80292EC
+ b _080282D4
+_0802822E:
+ bl sub_802933C
+ b _080282D4
+_08028234:
+ bl sub_802958C
+ b _080282D4
+_0802823A:
+ bl sub_8029208
+ b _080282D4
+_08028240:
+ movs r0, 0x1
+ bl sub_8028DE8
+ b _080282D4
+_08028248:
+ bl sub_8028F80
+ b _080282D4
+_0802824E:
+ bl sub_8028FC0
+ b _080282D4
+_08028254:
+ bl sub_8028FDC
+ b _080282D4
+_0802825A:
+ bl sub_80290D4
+ b _080282D4
+_08028260:
+ bl sub_80290F0
+ b _080282D4
+_08028266:
+ bl sub_80291AC
+ b _080282D4
+_0802826C:
+ bl sub_8029044
+ b _080282D4
+_08028272:
+ bl sub_8028CFC
+ b _080282D4
+_08028278:
+ bl sub_8028D4C
+ b _080282D4
+_0802827E:
+ movs r0, 0xA
+ bl sub_8028DE8
+ b _080282D4
+_08028286:
+ bl sub_8028E08
+ b _080282D4
+_0802828C:
+ movs r0, 0x19
+ bl sub_8028DE8
+ b _080282D4
+_08028294:
+ bl sub_8028E24
+ b _080282D4
+_0802829A:
+ bl sub_8028E54
+ b _080282D4
+_080282A0:
+ bl sub_8028E84
+ b _080282D4
+_080282A6:
+ bl sub_8028EAC
+ b _080282D4
+_080282AC:
+ bl sub_8028ED4
+ b _080282D4
+_080282B2:
+ bl sub_8028F04
+ b _080282D4
+_080282B8:
+ bl sub_8028F30
+ b _080282D4
+_080282BE:
+ bl sub_8028F58
+ b _080282D4
+_080282C4:
+ bl sub_8028BF0
+ b _080282D4
+_080282CA:
+ bl sub_8028CE0
+ b _080282D4
+_080282D0:
movs r0, 0x3
- bl sub_802B2BC
-_0802A6E8:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802A6B4
-
- thumb_func_start sub_802A6F0
-sub_802A6F0:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A710
- movs r0, 0x18
- bl sub_802B2BC
- movs r0, 0x1
- bl sub_8011C28
+ b _080282D6
+_080282D4:
movs r0, 0
- bl sub_8012574
-_0802A710:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A6F0
-
- thumb_func_start sub_802A718
-sub_802A718:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A738
- movs r0, 0x25
- bl sub_802B2BC
- movs r0, 0x1
- bl sub_8011C28
- movs r0, 0
- bl sub_8012574
-_0802A738:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A718
-
- thumb_func_start sub_802A740
-sub_802A740:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A754
- movs r0, 0x1E
- bl sub_802B2BC
-_0802A754:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A740
-
- thumb_func_start sub_802A75C
-sub_802A75C:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A792
- ldr r0, [sp]
- cmp r0, 0
- beq _0802A78C
- cmp r0, 0x7
- bne _0802A792
- ldr r0, _0802A788
- ldr r0, [r0]
- movs r1, 0xA7
- lsls r1, 3
- adds r0, r1
- ldr r0, [r0]
- movs r0, 0x16
- bl sub_802B2BC
- b _0802A792
- .align 2, 0
-_0802A788: .4byte gUnknown_203B2C4
-_0802A78C:
- movs r0, 0x1
- bl sub_802B2BC
-_0802A792:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A75C
+_080282D6:
+ pop {r1}
+ bx r1
+ thumb_func_end sub_8028078
- thumb_func_start sub_802A798
-sub_802A798:
- push {r4,r5,lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A81E
- ldr r0, [sp]
- cmp r0, 0x7
- beq _0802A7BC
- cmp r0, 0x7
- bgt _0802A7B6
- cmp r0, 0
- beq _0802A818
- b _0802A81E
-_0802A7B6:
- cmp r0, 0x8
- beq _0802A810
- b _0802A81E
-_0802A7BC:
- ldr r4, _0802A800
- ldr r0, [r4]
- movs r1, 0x86
- lsls r1, 2
- adds r0, r1
- ldrb r0, [r0]
- bl sub_8095228
- adds r2, r0, 0
- ldr r1, [r4]
- ldr r3, _0802A804
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0
- beq _0802A7E2
- ldr r5, _0802A808
- adds r0, r1, r5
- ldr r0, [r0]
- str r0, [r2, 0x20]
-_0802A7E2:
- ldr r0, _0802A80C
- ldr r1, [r0]
- ldr r0, [r4]
- adds r0, r3
- ldrb r0, [r0]
- lsls r0, 1
- adds r1, 0x50
+ thumb_func_start sub_80282DC
+sub_80282DC:
+ ldr r1, _080282F4
+ ldr r1, [r1]
+ movs r3, 0x86
+ lsls r3, 2
+ adds r2, r1, r3
+ ldrb r2, [r2]
+ strb r2, [r0]
+ ldr r0, _080282F8
adds r1, r0
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
- movs r0, 0x29
- bl sub_802B2BC
- b _0802A81E
- .align 2, 0
-_0802A800: .4byte gUnknown_203B2C4
-_0802A804: .4byte 0x0000041e
-_0802A808: .4byte 0x0000041c
-_0802A80C: .4byte gUnknown_203B460
-_0802A810:
- movs r0, 0xB
- bl sub_802B2BC
- b _0802A81E
-_0802A818:
- movs r0, 0x1
- bl sub_802B2BC
-_0802A81E:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_802A798
-
- thumb_func_start sub_802A828
-sub_802A828:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A848
- movs r0, 0x2A
- bl sub_802B2BC
- movs r0, 0x1
- bl sub_8011C28
- movs r0, 0
- bl sub_8012574
-_0802A848:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A828
-
- thumb_func_start sub_802A850
-sub_802A850:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A89A
- bl sub_8012600
- lsls r0, 24
- cmp r0, 0
- bne _0802A89A
- bl sub_8012750
- ldr r0, _0802A884
- ldr r0, [r0]
- ldr r1, _0802A888
- adds r0, r1
- ldr r0, [r0]
- cmp r0, 0x3
- blt _0802A89A
- cmp r0, 0x4
- ble _0802A88C
- cmp r0, 0x5
- beq _0802A894
- b _0802A89A
- .align 2, 0
-_0802A884: .4byte gUnknown_203B2C4
-_0802A888: .4byte 0x00000534
-_0802A88C:
- movs r0, 0x1D
- bl sub_802B2BC
- b _0802A89A
-_0802A894:
- movs r0, 0x19
- bl sub_802B2BC
-_0802A89A:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A850
-
- thumb_func_start sub_802A8A0
-sub_802A8A0:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A8B4
- movs r0, 0x13
- bl sub_802B2BC
-_0802A8B4:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A8A0
-
- thumb_func_start sub_802A8BC
-sub_802A8BC:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A90A
- ldr r0, [sp]
- cmp r0, 0
- beq _0802A904
- cmp r0, 0xA
- bne _0802A90A
- ldr r0, _0802A8EC
- ldr r0, [r0]
- ldr r1, _0802A8F0
- adds r0, r1
- ldr r0, [r0]
- cmp r0, 0x3
- blt _0802A90A
- cmp r0, 0x4
- ble _0802A8F4
- cmp r0, 0x5
- beq _0802A8FC
- b _0802A90A
- .align 2, 0
-_0802A8EC: .4byte gUnknown_203B2C4
-_0802A8F0: .4byte 0x00000534
-_0802A8F4:
- movs r0, 0x1D
- bl sub_802B2BC
- b _0802A90A
-_0802A8FC:
- movs r0, 0x19
- bl sub_802B2BC
- b _0802A90A
-_0802A904:
- movs r0, 0x1
- bl sub_802B2BC
-_0802A90A:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A8BC
-
- thumb_func_start sub_802A910
-sub_802A910:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A986
- ldr r0, [sp]
- cmp r0, 0x9
- beq _0802A934
- cmp r0, 0x9
- bgt _0802A92E
- cmp r0, 0
- beq _0802A980
- b _0802A986
-_0802A92E:
- cmp r0, 0xA
- beq _0802A950
- b _0802A986
-_0802A934:
- movs r0, 0
- bl sub_801CF14
- lsls r0, 24
- cmp r0, 0
- beq _0802A948
- movs r0, 0xA
- bl sub_802B2BC
- b _0802A986
-_0802A948:
- movs r0, 0xB
- bl sub_802B2BC
- b _0802A986
-_0802A950:
- ldr r0, _0802A968
- ldr r0, [r0]
- ldr r1, _0802A96C
- adds r0, r1
- ldr r0, [r0]
- cmp r0, 0x3
- blt _0802A986
- cmp r0, 0x4
- ble _0802A970
- cmp r0, 0x5
- beq _0802A978
- b _0802A986
- .align 2, 0
-_0802A968: .4byte gUnknown_203B2C4
-_0802A96C: .4byte 0x00000534
-_0802A970:
- movs r0, 0x1D
- bl sub_802B2BC
- b _0802A986
-_0802A978:
- movs r0, 0x19
- bl sub_802B2BC
- b _0802A986
-_0802A980:
- movs r0, 0x1
- bl sub_802B2BC
-_0802A986:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A910
-
- thumb_func_start sub_802A98C
-sub_802A98C:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A9A0
- movs r0, 0x8
- bl sub_802B2BC
-_0802A9A0:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A98C
-
- thumb_func_start sub_802A9A8
-sub_802A9A8:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802A9F6
- ldr r0, [sp]
- cmp r0, 0
- beq _0802A9F0
- cmp r0, 0x7
- bne _0802A9F6
- ldr r0, _0802A9D8
- ldr r0, [r0]
- ldr r1, _0802A9DC
- adds r0, r1
- ldr r0, [r0]
- cmp r0, 0x3
- blt _0802A9F6
- cmp r0, 0x4
- ble _0802A9E0
- cmp r0, 0x5
- beq _0802A9E8
- b _0802A9F6
- .align 2, 0
-_0802A9D8: .4byte gUnknown_203B2C4
-_0802A9DC: .4byte 0x00000534
-_0802A9E0:
- movs r0, 0x1D
- bl sub_802B2BC
- b _0802A9F6
-_0802A9E8:
- movs r0, 0x19
- bl sub_802B2BC
- b _0802A9F6
-_0802A9F0:
- movs r0, 0x1
- bl sub_802B2BC
-_0802A9F6:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A9A8
-
- thumb_func_start sub_802A9FC
-sub_802A9FC:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802AA22
- ldr r0, [sp]
- cmp r0, 0
- beq _0802AA1C
- cmp r0, 0x7
- bne _0802AA22
- movs r0, 0x26
- bl sub_802B2BC
- b _0802AA22
-_0802AA1C:
- movs r0, 0x1
- bl sub_802B2BC
-_0802AA22:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802A9FC
-
- thumb_func_start sub_802AA28
-sub_802AA28:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802AAA6
- ldr r2, [sp]
- cmp r2, 0
- beq _0802AAA0
- cmp r2, 0
- blt _0802AAA6
- cmp r2, 0x5
- bgt _0802AAA6
- cmp r2, 0x3
- blt _0802AAA6
- ldr r0, _0802AA7C
- ldr r0, [r0]
- ldr r3, _0802AA80
- adds r1, r0, r3
- str r2, [r1]
- movs r1, 0xA7
- lsls r1, 3
- adds r0, r1
- ldr r0, [r0]
- cmp r0, 0x1
- bne _0802AA8C
- movs r0, 0x5
- bl sub_80953D4
- lsls r0, 24
- lsrs r0, 24
- bl sub_8095228
- adds r0, 0x22
- ldrb r0, [r0]
- cmp r0, 0
- beq _0802AA84
- movs r0, 0x7
- bl sub_802B2BC
- b _0802AAA6
+ ldr r0, [r1]
+ bx lr
.align 2, 0
-_0802AA7C: .4byte gUnknown_203B2C4
-_0802AA80: .4byte 0x00000534
-_0802AA84:
- movs r0, 0x9
- bl sub_802B2BC
- b _0802AAA6
-_0802AA8C:
- cmp r2, 0x5
- bne _0802AA98
- movs r0, 0x26
- bl sub_802B2BC
- b _0802AAA6
-_0802AA98:
- movs r0, 0x1D
- bl sub_802B2BC
- b _0802AAA6
-_0802AAA0:
- movs r0, 0x1
- bl sub_802B2BC
-_0802AAA6:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802AA28
+_080282F4: .4byte gUnknown_203B2C0
+_080282F8: .4byte 0x0000053c
+ thumb_func_end sub_80282DC
- thumb_func_start sub_802AAAC
-sub_802AAAC:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802AAC0
- movs r0, 0x1
- bl sub_802B2BC
-_0802AAC0:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802AAAC
-
- thumb_func_start sub_802AAC8
-sub_802AAC8:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802AADC
- movs r0, 0x3
- bl sub_802B2BC
-_0802AADC:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802AAC8
-
- thumb_func_start sub_802AAE4
-sub_802AAE4:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
+ thumb_func_start sub_80282FC
+sub_80282FC:
+ push {r4,lr}
+ ldr r4, _08028340
+ ldr r0, [r4]
cmp r0, 0
- bne _0802AB5A
- ldr r2, [sp]
- cmp r2, 0x1
- beq _0802AB08
- cmp r2, 0x1
- bgt _0802AB02
- cmp r2, 0
- beq _0802AB54
- b _0802AB5A
-_0802AB02:
- cmp r2, 0x2
- beq _0802AB38
- b _0802AB5A
-_0802AB08:
- ldr r0, _0802AB2C
- ldr r0, [r0]
- movs r1, 0x6
- str r1, [r0, 0x40]
- movs r1, 0xA7
+ beq _08028338
+ movs r1, 0x84
lsls r1, 3
adds r0, r1
- str r2, [r0]
- movs r0, 0x5
- bl sub_8095324
- cmp r0, 0
- bne _0802AB30
- movs r0, 0x4
- bl sub_802B2BC
- b _0802AB5A
- .align 2, 0
-_0802AB2C: .4byte gUnknown_203B2C4
-_0802AB30:
- movs r0, 0xF
- bl sub_802B2BC
- b _0802AB5A
-_0802AB38:
- ldr r0, _0802AB50
ldr r0, [r0]
- movs r1, 0x7
- str r1, [r0, 0x40]
- movs r1, 0xA7
- lsls r1, 3
- adds r0, r1
- str r2, [r0]
- movs r0, 0x6
- bl sub_802B2BC
- b _0802AB5A
- .align 2, 0
-_0802AB50: .4byte gUnknown_203B2C4
-_0802AB54:
- movs r0, 0x2
- bl sub_802B2BC
-_0802AB5A:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802AAE4
-
- thumb_func_start sub_802AB60
-sub_802AB60:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802AB74
- movs r0, 0x22
- bl sub_802B2BC
-_0802AB74:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802AB60
-
- thumb_func_start sub_802AB7C
-sub_802AB7C:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802AB90
- movs r0, 0x22
- bl sub_802B2BC
-_0802AB90:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802AB7C
-
- thumb_func_start sub_802AB98
-sub_802AB98:
- push {r4,lr}
- bl sub_802F298
- cmp r0, 0x3
- bne _0802ABE0
- bl sub_802F2C0
- ldr r0, _0802ABE8
- movs r4, 0x98
- lsls r4, 1
- adds r1, r4, 0
- bl sub_808D8E0
- adds r0, r4, 0
- bl GetMonSpecies
- adds r1, r0, 0
- ldr r0, _0802ABEC
- bl strcpy
- ldr r0, _0802ABF0
- ldr r0, [r0]
- movs r1, 0x86
- lsls r1, 3
- adds r0, r1
- ldr r1, [r0]
- movs r0, 0x6
- bl sub_809539C
- lsls r0, 24
- lsrs r0, 24
- bl sub_8095240
- movs r0, 0x24
- bl sub_802B2BC
-_0802ABE0:
+ bl CloseFile
+ ldr r0, [r4]
+ bl MemoryFree
+ movs r0, 0
+ str r0, [r4]
+ bl sub_8031E10
+ bl sub_8023C60
+ bl sub_803084C
+ bl sub_80155F0
+ bl sub_80310B4
+ bl sub_8030DE4
+ bl sub_802453C
+_08028338:
pop {r4}
pop {r0}
bx r0
.align 2, 0
-_0802ABE8: .4byte gUnknown_202E5D8
-_0802ABEC: .4byte gAvailablePokemonNames
-_0802ABF0: .4byte gUnknown_203B2C4
- thumb_func_end sub_802AB98
+_08028340: .4byte gUnknown_203B2C0
+ thumb_func_end sub_80282FC
- thumb_func_start nullsub_131
-nullsub_131:
+ thumb_func_start nullsub_130
+nullsub_130:
bx lr
- thumb_func_end nullsub_131
+ thumb_func_end nullsub_130
- thumb_func_start sub_802ABF8
-sub_802ABF8:
+ thumb_func_start sub_8028348
+sub_8028348:
push {r4-r6,lr}
- sub sp, 0xB8
- ldr r1, _0802AC14
+ sub sp, 0x14
+ ldr r1, _08028368
ldr r0, [r1]
- ldrb r0, [r0]
+ ldr r0, [r0, 0x4]
adds r6, r1, 0
- cmp r0, 0x2A
- bls _0802AC0A
- b _0802B2AA
-_0802AC0A:
+ cmp r0, 0x3C
+ bls _0802835C
+ bl _08028AF2
+_0802835C:
lsls r0, 2
- ldr r1, _0802AC18
+ ldr r1, _0802836C
adds r0, r1
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_0802AC14: .4byte gUnknown_203B2C4
-_0802AC18: .4byte _0802AC1C
- .align 2, 0
-_0802AC1C:
- .4byte _0802B1DC
- .4byte _0802B1FC
- .4byte _0802B22C
- .4byte _0802B2AA
- .4byte _0802B1D4
- .4byte _0802ACC8
- .4byte _0802B248
- .4byte _0802B194
- .4byte _0802B1A4
- .4byte _0802B168
- .4byte _0802B138
- .4byte _0802B128
- .4byte _0802B0F0
- .4byte _0802B0AC
- .4byte _0802AD08
- .4byte _0802AD18
- .4byte _0802AD20
- .4byte _0802AD46
- .4byte _0802B2AA
- .4byte _0802AD80
- .4byte _0802ADB0
- .4byte _0802B2AA
- .4byte _0802B07C
- .4byte _0802B094
- .4byte _0802B2AA
- .4byte _0802AF50
- .4byte _0802AF1A
- .4byte _0802AF46
- .4byte _0802B2AA
- .4byte _0802B0A4
- .4byte _0802ADF8
- .4byte _0802B2AA
- .4byte _0802AF70
- .4byte _0802AF78
- .4byte _0802AFAC
- .4byte _0802B2AA
- .4byte _0802AF60
- .4byte _0802B2AA
- .4byte _0802AEEC
- .4byte _0802AEF4
- .4byte _0802B2AA
- .4byte _0802B110
- .4byte _0802B120
-_0802ACC8:
- bl sub_808D33C
- adds r1, r0, 0
- adds r1, 0x4C
- add r0, sp, 0x14
- movs r2, 0xA
- bl sub_80922B4
- ldr r5, _0802ACF8
- ldr r0, [r5]
- ldr r4, _0802ACFC
- adds r0, r4
- ldr r1, _0802AD00
- add r2, sp, 0x14
- bl sub_800D158
- ldr r2, [r5]
- adds r4, r2, r4
- movs r0, 0x84
- lsls r0, 3
- adds r2, r0
- ldr r3, _0802AD04
- adds r0, r4, 0
- b _0802B238
- .align 2, 0
-_0802ACF8: .4byte gUnknown_203B2C4
-_0802ACFC: .4byte 0x00000434
-_0802AD00: .4byte gUnknown_80DF250
-_0802AD04: .4byte 0x0000010d
-_0802AD08:
- ldr r0, _0802AD10
- ldr r3, _0802AD14
- b _0802B1A8
- .align 2, 0
-_0802AD10: .4byte gUnknown_80DF304
-_0802AD14: .4byte gUnknown_80DEE60
-_0802AD18:
- ldr r0, _0802AD1C
- b _0802B22E
- .align 2, 0
-_0802AD1C: .4byte gUnknown_80DF330
-_0802AD20:
- bl sub_8030894
- cmp r0, 0
- beq _0802AD2A
- b _0802B2AA
-_0802AD2A:
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- movs r0, 0x5
- movs r1, 0
- movs r2, 0
- movs r3, 0x6
- bl sub_80306A8
- b _0802B2AA
-_0802AD46:
- ldr r0, [r6]
- movs r4, 0xD7
- lsls r4, 2
- adds r0, r4
- bl sub_8006518
- ldr r1, [r6]
- movs r5, 0x87
- lsls r5, 2
- adds r0, r1, r5
- adds r1, r4
- ldr r3, _0802AD78
- ldr r2, _0802AD7C
- str r2, [sp]
- movs r2, 0x1
- str r2, [sp, 0x4]
- movs r2, 0
- str r2, [sp, 0x8]
- str r2, [sp, 0xC]
- movs r2, 0x3
- bl SetMenuItems
- bl sub_803092C
- b _0802ADE0
- .align 2, 0
-_0802AD78: .4byte gUnknown_80DED60
-_0802AD7C: .4byte gUnknown_80DED78
-_0802AD80:
- bl sub_801D008
- cmp r0, 0
- beq _0802AD8A
- b _0802B2AA
-_0802AD8A:
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- add r2, sp, 0xB4
- ldr r0, _0802ADAC
- str r0, [r2]
- movs r0, 0
- movs r1, 0x1
- movs r3, 0x9
- bl sub_801C8C4
- b _0802B2AA
- .align 2, 0
-_0802ADAC: .4byte 0x00020003
-_0802ADB0:
- ldr r0, [r6]
- movs r4, 0xD7
- lsls r4, 2
- adds r0, r4
- bl sub_8006518
- ldr r1, [r6]
- movs r5, 0x87
- lsls r5, 2
- adds r0, r1, r5
- adds r1, r4
- ldr r3, _0802ADF0
- ldr r2, _0802ADF4
- str r2, [sp]
- movs r2, 0x1
- str r2, [sp, 0x4]
- movs r2, 0
- str r2, [sp, 0x8]
- str r2, [sp, 0xC]
- movs r2, 0x3
- bl SetMenuItems
- bl sub_801CCD8
-_0802ADE0:
- ldr r0, [r6]
- adds r0, r5
- movs r1, 0x3
- movs r2, 0x1
- bl sub_8035CF4
- b _0802B2AA
- .align 2, 0
-_0802ADF0: .4byte gUnknown_80DED48
-_0802ADF4: .4byte gUnknown_80DED78
-_0802ADF8:
- ldr r1, [r6]
- movs r0, 0
- str r0, [r1, 0x44]
- bl sub_8011830
- ldr r0, [r6]
- ldr r0, [r0, 0x40]
- bl sub_8037B28
- ldr r1, [r6]
- str r0, [r1, 0x44]
- cmp r0, 0
- bne _0802AEE6
- ldr r0, [r1, 0x40]
- cmp r0, 0x6
- beq _0802AE1E
- cmp r0, 0x7
- beq _0802AE5C
- b _0802AE8C
-_0802AE1E:
- movs r4, 0xDC
- lsls r4, 1
- adds r0, r1, r4
- movs r1, 0
- movs r2, 0x30
- bl MemoryFill8
- ldr r0, [r6]
- movs r5, 0x86
- lsls r5, 2
- adds r0, r5
- ldrb r0, [r0]
- bl sub_8095228
- ldr r1, [r6]
- adds r1, r4
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldr r2, [r6]
- ldr r0, [r2, 0x40]
- adds r4, r2, r4
- movs r1, 0xF4
- lsls r1, 1
- adds r2, r1
- b _0802AE82
-_0802AE5C:
- movs r4, 0xDC
- lsls r4, 1
- adds r0, r1, r4
- movs r1, 0
- movs r2, 0x30
- bl MemoryFill8
- ldr r0, [r6]
- movs r5, 0xF4
- lsls r5, 1
- adds r0, r5
- movs r1, 0
- movs r2, 0x30
- bl MemoryFill8
- ldr r2, [r6]
- ldr r0, [r2, 0x40]
- adds r4, r2, r4
- adds r2, r5
-_0802AE82:
- adds r1, r4, 0
- bl sub_8037D64
- ldr r1, [r6]
- str r0, [r1, 0x44]
-_0802AE8C:
- ldr r4, _0802AED0
- ldr r2, [r4]
- ldr r0, [r2, 0x44]
- cmp r0, 0
- bne _0802AEE6
- ldr r0, [r2, 0x40]
- cmp r0, 0x7
- bhi _0802AEE6
- cmp r0, 0x6
- bcc _0802AEE6
- movs r3, 0xDC
- lsls r3, 1
- adds r1, r2, r3
- movs r5, 0xF4
- lsls r5, 1
- adds r2, r5
- bl sub_80381F4
- ldr r1, [r4]
- str r0, [r1, 0x44]
- bl sub_800D588
- lsls r0, 24
- cmp r0, 0
- beq _0802AED4
- ldr r0, [r4]
- movs r2, 0x86
- lsls r2, 3
- adds r1, r0, r2
- movs r3, 0xFC
- lsls r3, 1
- adds r0, r3
- b _0802AEE2
- .align 2, 0
-_0802AED0: .4byte gUnknown_203B2C4
-_0802AED4:
- ldr r0, [r4]
- movs r5, 0x86
- lsls r5, 3
- adds r1, r0, r5
- movs r2, 0xE4
- lsls r2, 1
- adds r0, r2
-_0802AEE2:
- ldr r0, [r0]
- str r0, [r1]
-_0802AEE6:
- bl xxx_call_start_bg_music
- b _0802B2AA
-_0802AEEC:
- ldr r0, _0802AEF0
- b _0802B22E
- .align 2, 0
-_0802AEF0: .4byte gUnknown_80DF380
-_0802AEF4:
- ldr r0, [r6]
- movs r5, 0xEF
- lsls r5, 2
- adds r0, r5
- bl sub_8006518
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r1, [r6]
- adds r1, 0x8
- movs r0, 0x4
- bl sub_80151C0
- b _0802B2AA
-_0802AF1A:
+_08028368: .4byte gUnknown_203B2C0
+_0802836C: .4byte _08028370
+ .align 2, 0
+_08028370:
+ .4byte _08028A84
+ .4byte _08028AB4
+ .4byte _08028AE0
+ .4byte _08028AF2
+ .4byte _08028650
+ .4byte _08028660
+ .4byte _08028678
+ .4byte _08028AF2
+ .4byte _08028802
+ .4byte _08028640
+ .4byte _0802890C
+ .4byte _08028948
+ .4byte _08028988
+ .4byte _08028978
+ .4byte _080289A0
+ .4byte _08028990
+ .4byte _080289B8
+ .4byte _080289B0
+ .4byte _080289C8
+ .4byte _080289E8
+ .4byte _08028A48
+ .4byte _08028A58
+ .4byte _08028A68
+ .4byte _080289F8
+ .4byte _08028A08
+ .4byte _08028A18
+ .4byte _08028850
+ .4byte _08028860
+ .4byte _08028868
+ .4byte _08028878
+ .4byte _08028890
+ .4byte _080288A0
+ .4byte _080288C6
+ .4byte _08028AF2
+ .4byte _08028888
+ .4byte _08028790
+ .4byte _08028AF2
+ .4byte _080287C4
+ .4byte _080287D4
+ .4byte _080287DC
+ .4byte _08028AF2
+ .4byte _080285CC
+ .4byte _080285DC
+ .4byte _080288C6
+ .4byte _08028AF2
+ .4byte _080285AC
+ .4byte _08028610
+ .4byte _080285F8
+ .4byte _08028600
+ .4byte _0802856C
+ .4byte _080284F4
+ .4byte _0802850C
+ .4byte _08028532
+ .4byte _08028AF2
+ .4byte _0802859C
+ .4byte _080284B8
+ .4byte _080284A8
+ .4byte _080284EC
+ .4byte _080284A0
+ .4byte _08028464
+ .4byte _08028490
+_08028464:
ldr r0, [r6]
movs r1, 0xEF
lsls r1, 2
@@ -1257,307 +413,120 @@ _0802AF1A:
ldrb r0, [r0]
movs r1, 0
bl sub_8031D70
- b _0802B2AA
-_0802AF46:
- ldr r0, _0802AF4C
- b _0802B22E
- .align 2, 0
-_0802AF4C: .4byte gUnknown_80DF3B4
-_0802AF50:
- ldr r0, _0802AF5C
+ b _08028AF2
+_08028490:
+ ldr r0, _0802849C
ldr r2, [r6]
- movs r5, 0x84
- lsls r5, 3
- adds r2, r5
- b _0802B236
+ movs r3, 0x84
+ lsls r3, 3
+ adds r2, r3
+ b _08028A72
.align 2, 0
-_0802AF5C: .4byte gUnknown_80DF418
-_0802AF60:
- ldr r0, _0802AF6C
+_0802849C: .4byte gUnknown_80DDBA8
+_080284A0:
+ ldr r0, _080284A4
+ b _08028A6A
+ .align 2, 0
+_080284A4: .4byte gUnknown_80DDBFC
+_080284A8:
+ ldr r0, _080284B4
ldr r2, [r6]
movs r1, 0x84
lsls r1, 3
adds r2, r1
- b _0802B236
- .align 2, 0
-_0802AF6C: .4byte gUnknown_80DF44C
-_0802AF70:
- ldr r0, _0802AF74
- b _0802B22E
+ b _08028A72
.align 2, 0
-_0802AF74: .4byte gUnknown_80DF46C
-_0802AF78:
+_080284B4: .4byte gUnknown_80DDC30
+_080284B8:
ldr r0, [r6]
- ldr r5, _0802AF90
- adds r0, r5
+ ldr r2, _080284D0
+ adds r0, r2
ldr r0, [r0]
- cmp r0, 0x4
- bne _0802AF86
- b _0802B2AA
-_0802AF86:
- cmp r0, 0x4
- bgt _0802AF94
- cmp r0, 0x3
- beq _0802AF9A
- b _0802B2AA
+ cmp r0, 0xE
+ bne _080284C6
+ b _08028AF2
+_080284C6:
+ cmp r0, 0xE
+ bhi _080284D4
+ cmp r0, 0xD
+ beq _080284DA
+ b _08028AF2
.align 2, 0
-_0802AF90: .4byte 0x00000534
-_0802AF94:
- cmp r0, 0x6
- ble _0802AF9A
- b _0802B2AA
-_0802AF9A:
- ldr r0, _0802AFA8
+_080284D0: .4byte 0x00000534
+_080284D4:
+ cmp r0, 0x10
+ bls _080284DA
+ b _08028AF2
+_080284DA:
+ ldr r0, _080284E8
ldr r2, [r6]
- movs r1, 0x84
- lsls r1, 3
- adds r2, r1
- b _0802B236
- .align 2, 0
-_0802AFA8: .4byte gUnknown_80DF4F4
-_0802AFAC:
- movs r4, 0x98
- lsls r4, 1
- adds r0, r4, 0
- bl GetMonSpecies
- adds r1, r0, 0
- ldr r5, _0802B00C
- ldr r0, [r5]
- ldr r2, _0802B010
- adds r0, r2
- bl strcpy
- ldr r1, [r5]
- movs r3, 0xAA
- lsls r3, 3
- adds r0, r1, r3
- movs r2, 0
- strh r4, [r0]
- ldr r0, _0802B014
- adds r1, r0
- movs r0, 0x2
- strb r0, [r1]
- ldr r0, [r5]
- adds r3, 0x4
- adds r1, r0, r3
- str r2, [r1]
- movs r1, 0x86
- lsls r1, 3
- adds r0, r1
- ldr r1, [r0]
- movs r0, 0x6
- bl sub_809539C
- lsls r0, 24
- lsrs r0, 24
- bl sub_8095228
- adds r2, r0, 0
- adds r0, 0x22
- ldrb r1, [r0]
- cmp r1, 0
- beq _0802B018
- ldr r0, [r5]
- movs r3, 0xAB
+ movs r3, 0x84
lsls r3, 3
- adds r0, r3
- b _0802B022
+ adds r2, r3
+ b _08028A72
.align 2, 0
-_0802B00C: .4byte gUnknown_203B2C4
-_0802B010: .4byte 0x0000053c
-_0802B014: .4byte 0x00000552
-_0802B018:
- ldr r0, [r5]
- movs r5, 0xAB
- lsls r5, 3
- adds r0, r5
- movs r1, 0
-_0802B022:
- strb r1, [r0]
- ldr r4, _0802B068
- ldr r0, [r4]
- ldr r1, _0802B06C
- adds r0, r1
- movs r5, 0
- movs r1, 0x1
- strb r1, [r0]
- adds r0, r2, 0x4
- movs r1, 0
- bl sub_803C200
- ldr r1, [r4]
- movs r3, 0xAC
- lsls r3, 3
- adds r2, r1, r3
- str r0, [r2]
- ldr r0, _0802B070
- adds r1, r0
- strb r5, [r1]
- ldr r0, [r4]
- ldr r1, _0802B074
- adds r0, r1
- strb r5, [r0]
- ldr r0, [r4]
- ldr r2, _0802B078
- adds r0, r2
- strb r5, [r0]
- ldr r0, [r4]
- subs r3, 0x24
- adds r0, r3
- movs r1, 0
- bl sub_802F204
- b _0802B2AA
+_080284E8: .4byte gUnknown_80DDC70
+_080284EC:
+ ldr r0, _080284F0
+ b _08028A6A
.align 2, 0
-_0802B068: .4byte gUnknown_203B2C4
-_0802B06C: .4byte 0x0000055b
-_0802B070: .4byte 0x00000559
-_0802B074: .4byte 0x0000055a
-_0802B078: .4byte 0x0000055c
-_0802B07C:
- movs r0, 0
- bl nullsub_23
- ldr r0, _0802B090
+_080284F0: .4byte gUnknown_80DDC30
+_080284F4:
+ ldr r0, _08028504
+ ldr r3, _08028508
movs r1, 0
movs r2, 0
- movs r3, 0
bl sub_80141B4
- b _0802B2AA
+ b _08028AF2
.align 2, 0
-_0802B090: .4byte gUnknown_80DF544
-_0802B094:
- ldr r0, _0802B0A0
- ldr r2, [r6]
- movs r5, 0x84
- lsls r5, 3
- adds r2, r5
- b _0802B236
- .align 2, 0
-_0802B0A0: .4byte gUnknown_80DF594
-_0802B0A4:
- ldr r0, _0802B0A8
- b _0802B1A6
- .align 2, 0
-_0802B0A8: .4byte gUnknown_80DF5E4
-_0802B0AC:
- bl sub_808D33C
- adds r1, r0, 0
- add r6, sp, 0x64
- adds r1, 0x4C
- adds r0, r6, 0
- movs r2, 0xA
- bl sub_80922B4
- ldr r5, _0802B0E0
- ldr r0, [r5]
- ldr r4, _0802B0E4
- adds r0, r4
- ldr r1, _0802B0E8
- adds r2, r6, 0
- bl sub_800D158
- ldr r2, [r5]
- adds r4, r2, r4
- movs r3, 0x84
- lsls r3, 3
- adds r2, r3
- ldr r3, _0802B0EC
- adds r0, r4, 0
- b _0802B238
- .align 2, 0
-_0802B0E0: .4byte gUnknown_203B2C4
-_0802B0E4: .4byte 0x00000434
-_0802B0E8: .4byte gUnknown_80DF63C
-_0802B0EC: .4byte 0x0000010d
-_0802B0F0:
- ldr r0, _0802B108
- ldr r3, _0802B10C
+_08028504: .4byte gUnknown_80DDCBC
+_08028508: .4byte 0x00000101
+_0802850C:
+ bl sub_8023CE8
+ cmp r0, 0
+ beq _08028516
+ b _08028AF2
+_08028516:
+ bl ResetUnusedInputStruct
+ movs r0, 0
+ movs r1, 0x1
+ movs r2, 0x1
+ bl sub_800641C
+ movs r0, 0x3
+ movs r1, 0
movs r2, 0
- str r2, [sp]
- movs r1, 0x4
- str r1, [sp, 0x4]
- str r2, [sp, 0x8]
+ movs r3, 0x9
+ bl sub_8023868
+ b _08028AF2
+_08028532:
+ ldr r0, [r6]
+ movs r4, 0xD7
+ lsls r4, 2
+ adds r0, r4
+ bl sub_8006518
ldr r1, [r6]
- movs r5, 0x84
- lsls r5, 3
- adds r1, r5
- b _0802B1BA
- .align 2, 0
-_0802B108: .4byte gUnknown_80DF694
-_0802B10C: .4byte gUnknown_80DEEE4
-_0802B110:
- ldr r0, _0802B11C
- ldr r2, [r6]
- movs r1, 0x84
- lsls r1, 3
- adds r2, r1
- b _0802B236
- .align 2, 0
-_0802B11C: .4byte gUnknown_80DF44C
-_0802B120:
- ldr r0, _0802B124
- b _0802B22E
- .align 2, 0
-_0802B124: .4byte gUnknown_80DF6F0
-_0802B128:
- ldr r0, _0802B134
- ldr r2, [r6]
- movs r5, 0x84
- lsls r5, 3
- adds r2, r5
- b _0802B236
- .align 2, 0
-_0802B134: .4byte gUnknown_80DF710
-_0802B138:
- ldr r0, _0802B160
- ldr r3, _0802B164
- movs r2, 0
+ movs r5, 0x87
+ lsls r5, 2
+ adds r0, r1, r5
+ adds r1, r4
+ ldr r3, _08028564
+ ldr r2, _08028568
str r2, [sp]
- movs r1, 0x4
- str r1, [sp, 0x4]
- str r2, [sp, 0x8]
- ldr r1, [r6]
- movs r2, 0x84
- lsls r2, 3
- adds r1, r2
- str r1, [sp, 0xC]
- movs r1, 0xC
- str r1, [sp, 0x10]
- movs r1, 0
- movs r2, 0
- bl sub_8014248
- b _0802B2AA
- .align 2, 0
-_0802B160: .4byte gUnknown_80DF73C
-_0802B164: .4byte gUnknown_80DEEBC
-_0802B168:
- ldr r0, _0802B18C
- ldr r3, _0802B190
+ movs r2, 0x1
+ str r2, [sp, 0x4]
movs r2, 0
- str r2, [sp]
- movs r1, 0x4
- str r1, [sp, 0x4]
str r2, [sp, 0x8]
- ldr r1, [r6]
- movs r5, 0x84
- lsls r5, 3
- adds r1, r5
- str r1, [sp, 0xC]
- movs r1, 0xC
- str r1, [sp, 0x10]
- movs r1, 0
- bl sub_8014248
- b _0802B2AA
- .align 2, 0
-_0802B18C: .4byte gUnknown_80DF77C
-_0802B190: .4byte gUnknown_80DEE7C
-_0802B194:
- ldr r0, _0802B1A0
- ldr r2, [r6]
- movs r1, 0x84
- lsls r1, 3
- adds r2, r1
- b _0802B236
+ str r2, [sp, 0xC]
+ movs r2, 0x3
+ bl SetMenuItems
+ bl sub_8023DA4
+ b _080288F6
.align 2, 0
-_0802B1A0: .4byte gUnknown_80DF7D4
-_0802B1A4:
- ldr r0, _0802B1CC
-_0802B1A6:
- ldr r3, _0802B1D0
-_0802B1A8:
+_08028564: .4byte gUnknown_80DDAE4
+_08028568: .4byte gUnknown_80DDAFC
+_0802856C:
+ ldr r0, _08028594
+ ldr r3, _08028598
movs r2, 0
str r2, [sp]
movs r1, 0x4
@@ -1567,41 +536,26 @@ _0802B1A8:
movs r2, 0x84
lsls r2, 3
adds r1, r2
-_0802B1BA:
str r1, [sp, 0xC]
movs r1, 0xC
str r1, [sp, 0x10]
movs r1, 0
- movs r2, 0x7
+ movs r2, 0xA
bl sub_8014248
- b _0802B2AA
+ b _08028AF2
.align 2, 0
-_0802B1CC: .4byte gUnknown_80DF870
-_0802B1D0: .4byte gUnknown_80DEE44
-_0802B1D4:
- ldr r0, _0802B1D8
- b _0802B22E
+_08028594: .4byte gUnknown_80DDD2C
+_08028598: .4byte gUnknown_80DDAA0
+_0802859C:
+ ldr r0, _080285A4
+ ldr r3, _080285A8
+ b _08028A1C
.align 2, 0
-_0802B1D8: .4byte gUnknown_80DF8B4
-_0802B1DC:
- ldr r0, _0802B1F4
- ldr r3, _0802B1F8
- movs r2, 0
- str r2, [sp]
- movs r1, 0x4
- str r1, [sp, 0x4]
- str r2, [sp, 0x8]
- ldr r1, [r6]
- movs r5, 0x84
- lsls r5, 3
- adds r1, r5
- b _0802B212
- .align 2, 0
-_0802B1F4: .4byte gUnknown_80DF8EC
-_0802B1F8: .4byte gUnknown_80DEDB8
-_0802B1FC:
- ldr r0, _0802B224
- ldr r3, _0802B228
+_080285A4: .4byte gUnknown_80DDD88
+_080285A8: .4byte gUnknown_80DDA80
+_080285AC:
+ ldr r0, _080285C4
+ ldr r3, _080285C8
movs r2, 0
str r2, [sp]
movs r1, 0x4
@@ -1611,14315 +565,684 @@ _0802B1FC:
movs r2, 0x84
lsls r2, 3
adds r1, r2
-_0802B212:
- str r1, [sp, 0xC]
- movs r1, 0xC
- str r1, [sp, 0x10]
- movs r1, 0
- movs r2, 0x1
- bl sub_8014248
- b _0802B2AA
+ b _08028A2E
.align 2, 0
-_0802B224: .4byte gUnknown_80DF928
-_0802B228: .4byte gUnknown_80DEDB8
-_0802B22C:
- ldr r0, _0802B240
-_0802B22E:
+_080285C4: .4byte gUnknown_80DDDBC
+_080285C8: .4byte gUnknown_80DDA64
+_080285CC:
+ ldr r0, _080285D8
ldr r2, [r6]
movs r3, 0x84
lsls r3, 3
adds r2, r3
-_0802B236:
- ldr r3, _0802B244
-_0802B238:
- movs r1, 0
- bl sub_80141B4
- b _0802B2AA
+ b _08028A72
.align 2, 0
-_0802B240: .4byte gUnknown_80DF94C
-_0802B244: .4byte 0x0000010d
-_0802B248:
- ldr r4, [r6]
- movs r5, 0xA7
- lsls r5, 3
- adds r0, r4, r5
- ldr r0, [r0]
- cmp r0, 0x1
- beq _0802B25C
- cmp r0, 0x2
- beq _0802B288
- b _0802B2AA
-_0802B25C:
- ldr r0, _0802B280
- ldr r3, _0802B284
+_080285D8: .4byte gUnknown_80DDDD8
+_080285DC:
+ bl sub_8030894
+ cmp r0, 0
+ beq _080285E6
+ b _08028AF2
+_080285E6:
+ bl ResetUnusedInputStruct
+ movs r0, 0
+ movs r1, 0x1
+ movs r2, 0x1
+ bl sub_800641C
+ movs r0, 0x4
+ b _080288BA
+_080285F8:
+ ldr r0, _080285FC
+ b _08028A6A
+ .align 2, 0
+_080285FC: .4byte gUnknown_80DDE20
+_08028600:
+ ldr r0, _0802860C
+ ldr r2, [r6]
+ movs r1, 0x84
+ lsls r1, 3
+ adds r2, r1
+ b _08028A72
+ .align 2, 0
+_0802860C: .4byte gUnknown_80DDE58
+_08028610:
+ ldr r0, _08028638
+ ldr r3, _0802863C
movs r2, 0
str r2, [sp]
movs r1, 0x4
str r1, [sp, 0x4]
str r2, [sp, 0x8]
+ ldr r1, [r6]
movs r2, 0x84
lsls r2, 3
- adds r1, r4, r2
- str r1, [sp, 0xC]
- movs r1, 0xC
- str r1, [sp, 0x10]
- movs r1, 0
- movs r2, 0x3
- bl sub_8014248
- b _0802B2AA
- .align 2, 0
-_0802B280: .4byte gUnknown_80DF96C
-_0802B284: .4byte gUnknown_80DEE08
-_0802B288:
- ldr r0, _0802B2B4
- ldr r3, _0802B2B8
- movs r2, 0
- str r2, [sp]
- movs r1, 0x4
- str r1, [sp, 0x4]
- str r2, [sp, 0x8]
- movs r5, 0x84
- lsls r5, 3
- adds r1, r4, r5
+ adds r1, r2
str r1, [sp, 0xC]
movs r1, 0xC
str r1, [sp, 0x10]
movs r1, 0
- movs r2, 0x3
+ movs r2, 0x11
bl sub_8014248
-_0802B2AA:
- add sp, 0xB8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0802B2B4: .4byte gUnknown_80DF9A4
-_0802B2B8: .4byte gUnknown_80DEE08
- thumb_func_end sub_802ABF8
-
- thumb_func_start sub_802B2BC
-sub_802B2BC:
- push {lr}
- ldr r1, _0802B2D0
- ldr r1, [r1]
- strb r0, [r1]
- bl nullsub_131
- bl sub_802ABF8
- pop {r0}
- bx r0
- .align 2, 0
-_0802B2D0: .4byte gUnknown_203B2C4
- thumb_func_end sub_802B2BC
-
- thumb_func_start sub_802B2D4
-sub_802B2D4:
- push {r4,r5,lr}
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r5, _0802B348
- movs r4, 0xA0
- lsls r4, 1
- adds r0, r4, 0
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r5]
- movs r1, 0
- adds r2, r4, 0
- bl MemoryFill8
- ldr r1, [r5]
- movs r0, 0xFF
- strb r0, [r1, 0x1]
- ldr r0, _0802B34C
- subs r4, 0x10
- adds r1, r4, 0
- bl sub_808D8E0
- adds r0, r4, 0
- bl GetDialogueSpriteDataPtr
- ldr r1, [r5]
- str r0, [r1, 0x4]
- ldr r0, [r0, 0x4]
- str r0, [r1, 0x8]
- movs r2, 0
- strb r2, [r1, 0x10]
- ldr r0, [r5]
- strb r2, [r0, 0x11]
- ldr r0, [r5]
- strb r2, [r0, 0x12]
- ldr r0, [r5]
- movs r1, 0x2
- strh r1, [r0, 0xC]
- movs r1, 0x8
- strh r1, [r0, 0xE]
- adds r0, 0x1
- bl sub_8099394
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0802B350
- movs r0, 0
- bl sub_802B548
- movs r0, 0x1
- b _0802B352
+ b _08028AF2
.align 2, 0
-_0802B348: .4byte gUnknown_203B2C8
-_0802B34C: .4byte gUnknown_202E5D8
-_0802B350:
- movs r0, 0
-_0802B352:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_802B2D4
-
- thumb_func_start sub_802B358
-sub_802B358:
- push {lr}
- ldr r0, _0802B370
- ldr r0, [r0]
- ldrb r0, [r0]
- cmp r0, 0x5
- bhi _0802B3B2
- lsls r0, 2
- ldr r1, _0802B374
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802B370: .4byte gUnknown_203B2C8
-_0802B374: .4byte _0802B378
- .align 2, 0
-_0802B378:
- .4byte _0802B390
- .4byte _0802B396
- .4byte _0802B39C
- .4byte _0802B3A2
- .4byte _0802B3A8
- .4byte _0802B3AE
-_0802B390:
- bl sub_802B560
- b _0802B3B2
-_0802B396:
- bl sub_802B57C
- b _0802B3B2
-_0802B39C:
- bl sub_802B5B8
- b _0802B3B2
-_0802B3A2:
- bl sub_802B5FC
- b _0802B3B2
-_0802B3A8:
- bl sub_802B624
- b _0802B3B2
-_0802B3AE:
- movs r0, 0x3
- b _0802B3B4
-_0802B3B2:
- movs r0, 0
-_0802B3B4:
- pop {r1}
- bx r1
- thumb_func_end sub_802B358
-
- thumb_func_start sub_802B3B8
-sub_802B3B8:
- push {r4,lr}
- ldr r4, _0802B3D8
- ldr r0, [r4]
- cmp r0, 0
- beq _0802B3D2
- ldr r0, [r0, 0x4]
- bl CloseFile
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802B3D2:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802B3D8: .4byte gUnknown_203B2C8
- thumb_func_end sub_802B3B8
-
- thumb_func_start nullsub_132
-nullsub_132:
- bx lr
- thumb_func_end nullsub_132
-
- thumb_func_start sub_802B3E0
-sub_802B3E0:
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x28
- ldr r1, _0802B404
- ldr r0, [r1]
- ldrb r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x5
- bls _0802B3F8
- b _0802B532
-_0802B3F8:
- lsls r0, 2
- ldr r1, _0802B408
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802B404: .4byte gUnknown_203B2C8
-_0802B408: .4byte _0802B40C
- .align 2, 0
-_0802B40C:
- .4byte _0802B424
- .4byte _0802B464
- .4byte _0802B50C
- .4byte _0802B532
- .4byte _0802B524
- .4byte _0802B532
-_0802B424:
- movs r0, 0
- bl sub_80023E4
- lsls r0, 24
- cmp r0, 0
- beq _0802B438
- mov r0, sp
- bl sub_80920D8
- b _0802B440
-_0802B438:
- ldr r1, _0802B458
- mov r0, sp
- bl strcpy
-_0802B440:
- ldr r4, _0802B45C
- ldr r0, [r4]
- adds r0, 0x14
- ldr r1, _0802B460
- mov r2, sp
- bl sub_800D158
- ldr r2, [r4]
- adds r0, r2, 0
- adds r0, 0x14
- b _0802B510
- .align 2, 0
-_0802B458: .4byte gUnknown_80DF9F0
-_0802B45C: .4byte gUnknown_203B2C8
-_0802B460: .4byte gUnknown_80DF9F8
-_0802B464:
- movs r6, 0x98
- lsls r6, 1
- adds r0, r6, 0
- bl GetMonSpecies
- adds r1, r0, 0
- ldr r5, _0802B500
- ldr r0, [r5]
- movs r2, 0x8A
- lsls r2, 1
- mov r9, r2
- add r0, r9
- bl strcpy
- ldr r2, [r5]
- movs r3, 0x94
- lsls r3, 1
- adds r0, r2, r3
- movs r1, 0
- mov r8, r1
- movs r1, 0
- strh r6, [r0]
- adds r3, 0x2
+_08028638: .4byte gUnknown_80DDEC0
+_0802863C: .4byte gUnknown_80DDB60
+_08028640:
+ ldr r0, _0802864C
+ ldr r2, [r6]
+ movs r3, 0x84
+ lsls r3, 3
adds r2, r3
- movs r0, 0x2
- strb r0, [r2]
- ldr r0, [r5]
- movs r2, 0x96
- lsls r2, 1
- adds r0, r2
- str r1, [r0]
- bl sub_8097790
- ldr r0, [r5]
- ldrb r0, [r0, 0x1]
- bl sub_8095228
- adds r4, r0, 0
- adds r4, 0x4
- ldr r2, [r5]
- adds r2, r6
- adds r0, r4, 0
- movs r1, 0
- bl sub_803C37C
- adds r0, r4, 0
- movs r1, 0
- bl sub_803C200
- ldr r2, [r5]
- movs r3, 0x9C
- lsls r3, 1
- adds r1, r2, r3
- str r0, [r1]
- ldr r1, _0802B504
- adds r0, r2, r1
- mov r2, r8
- strb r2, [r0]
- ldr r0, [r5]
- subs r3, 0x6
- adds r0, r3
- strb r2, [r0]
- ldr r0, [r5]
- ldr r2, _0802B508
- adds r1, r0, r2
- movs r0, 0xA
- strb r0, [r1]
- ldr r0, [r5]
- adds r3, 0x2
- adds r0, r3
- mov r1, r8
- strb r1, [r0]
- ldr r0, [r5]
- add r0, r9
- movs r1, 0
- bl sub_802F204
- b _0802B532
- .align 2, 0
-_0802B500: .4byte gUnknown_203B2C8
-_0802B504: .4byte 0x00000131
-_0802B508: .4byte 0x00000133
-_0802B50C:
- ldr r0, _0802B51C
- ldr r2, [r2]
-_0802B510:
- adds r2, 0x4
- ldr r3, _0802B520
- movs r1, 0
- bl sub_80141B4
- b _0802B532
- .align 2, 0
-_0802B51C: .4byte gUnknown_80DFAA8
-_0802B520: .4byte 0x0000010d
-_0802B524:
- ldr r0, _0802B540
- ldr r2, [r2]
- adds r2, 0x4
- ldr r3, _0802B544
- movs r1, 0
- bl sub_80141B4
-_0802B532:
- add sp, 0x28
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0802B540: .4byte gUnknown_80DFB14
-_0802B544: .4byte 0x0000010d
- thumb_func_end sub_802B3E0
-
- thumb_func_start sub_802B548
-sub_802B548:
- push {lr}
- ldr r1, _0802B55C
- ldr r1, [r1]
- strb r0, [r1]
- bl nullsub_132
- bl sub_802B3E0
- pop {r0}
- bx r0
- .align 2, 0
-_0802B55C: .4byte gUnknown_203B2C8
- thumb_func_end sub_802B548
-
- thumb_func_start sub_802B560
-sub_802B560:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802B574
- movs r0, 0x1
- bl sub_802B548
-_0802B574:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802B560
-
- thumb_func_start sub_802B57C
-sub_802B57C:
- push {r4,lr}
- bl sub_802F298
- cmp r0, 0x3
- bne _0802B5AA
- bl sub_802F2C0
- ldr r0, _0802B5B0
- movs r4, 0x98
- lsls r4, 1
- adds r1, r4, 0
- bl sub_808D8E0
- adds r0, r4, 0
- bl GetMonSpecies
- adds r1, r0, 0
- ldr r0, _0802B5B4
- bl strcpy
- movs r0, 0x2
- bl sub_802B548
-_0802B5AA:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802B5B0: .4byte gUnknown_202E5D8
-_0802B5B4: .4byte gAvailablePokemonNames
- thumb_func_end sub_802B57C
-
- thumb_func_start sub_802B5B8
-sub_802B5B8:
- push {r4,lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802B5EE
- bl sub_8011C34
- adds r4, r0, 0
- ldr r0, _0802B5F8
- ldr r0, [r0]
- ldrb r0, [r0, 0x1]
- bl sub_8095228
- movs r1, 0x4
- strb r1, [r0]
- str r4, [r0, 0x28]
- movs r0, 0x3
- bl sub_802B548
- movs r0, 0x1
- bl sub_8011C28
- movs r0, 0
- bl sub_8012574
-_0802B5EE:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802B5F8: .4byte gUnknown_203B2C8
- thumb_func_end sub_802B5B8
-
- thumb_func_start sub_802B5FC
-sub_802B5FC:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802B61E
- bl sub_8012600
- lsls r0, 24
- cmp r0, 0
- bne _0802B61E
- bl sub_8012750
- movs r0, 0x4
- bl sub_802B548
-_0802B61E:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802B5FC
-
- thumb_func_start sub_802B624
-sub_802B624:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802B638
- movs r0, 0x5
- bl sub_802B548
-_0802B638:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802B624
-
- thumb_func_start sub_802B640
-sub_802B640:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- adds r4, r1, 0
- mov r8, r2
- bl sub_802B9D8
- lsls r0, 24
- cmp r0, 0
- beq _0802B65A
- movs r0, 0
- b _0802B706
-_0802B65A:
- ldr r5, _0802B710
- ldr r0, [r5]
- cmp r0, 0
- bne _0802B66C
- movs r0, 0xD4
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r5]
-_0802B66C:
- ldr r0, [r5]
- str r6, [r0, 0x6C]
- lsls r1, r6, 1
- adds r1, r6
- lsls r1, 3
- adds r1, 0x74
- adds r1, r0, r1
- str r1, [r0, 0x70]
- adds r0, 0x74
- bl sub_8006518
- ldr r1, [r5]
- ldr r2, [r1, 0x6C]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x74
- ldr r0, _0802B714
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- cmp r4, 0
- beq _0802B6B0
- ldr r1, [r5]
- ldr r2, [r1, 0x6C]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, 0x7C
- adds r1, r0
- ldr r0, [r4]
- str r0, [r1]
-_0802B6B0:
- ldr r0, [r5]
- ldr r0, [r0, 0x70]
- mov r1, r8
- bl sub_8012D08
- bl ResetUnusedInputStruct
- ldr r0, [r5]
- adds r0, 0x74
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r4, [r5]
- adds r4, 0x38
- bl sub_802B9A8
- adds r1, r0, 0
- adds r0, r4, 0
- mov r2, r8
- adds r3, r6, 0
- bl sub_8013818
- ldr r2, [r5]
- ldr r0, _0802B718
- ldrh r1, [r0]
- adds r0, r2, 0
- adds r0, 0x50
- strh r1, [r0]
- ldr r0, _0802B71C
- ldrh r0, [r0]
- adds r1, r2, 0
- adds r1, 0x56
- strh r0, [r1]
- adds r0, r2, 0
- adds r0, 0x38
- bl sub_8013984
- bl sub_802B880
- bl sub_802B8D4
- movs r0, 0x1
-_0802B706:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
+ b _08028A72
.align 2, 0
-_0802B710: .4byte gUnknown_203B2CC
-_0802B714: .4byte gUnknown_80DFBEC
-_0802B718: .4byte gUnknown_203B2D0
-_0802B71C: .4byte gUnknown_203B2D2
- thumb_func_end sub_802B640
-
- thumb_func_start sub_802B720
-sub_802B720:
- push {lr}
- lsls r0, 24
- cmp r0, 0
- bne _0802B73C
- ldr r0, _0802B738
- ldr r0, [r0]
- adds r0, 0x38
- bl sub_8013660
- movs r0, 0
- b _0802B7A2
+_0802864C: .4byte gUnknown_80DDF2C
+_08028650:
+ ldr r0, _08028658
+ ldr r3, _0802865C
+ b _08028A1C
.align 2, 0
-_0802B738: .4byte gUnknown_203B2CC
-_0802B73C:
- ldr r0, _0802B754
- ldr r0, [r0]
- adds r0, 0x38
- bl GetKeyPress
- cmp r0, 0x2
- beq _0802B75E
- cmp r0, 0x2
- bgt _0802B758
- cmp r0, 0x1
- beq _0802B768
- b _0802B77C
- .align 2, 0
-_0802B754: .4byte gUnknown_203B2CC
-_0802B758:
- cmp r0, 0x4
- beq _0802B772
- b _0802B77C
-_0802B75E:
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _0802B7A2
-_0802B768:
+_08028658: .4byte gUnknown_80DDFB8
+_0802865C: .4byte gUnknown_80DDA48
+_08028660:
movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _0802B7A2
-_0802B772:
- movs r0, 0x4
- bl PlayMenuSoundEffect
- movs r0, 0x4
- b _0802B7A2
-_0802B77C:
- ldr r0, _0802B794
- ldr r0, [r0]
- adds r0, 0x38
- movs r1, 0x1
- bl sub_80138B8
- lsls r0, 24
- cmp r0, 0
- bne _0802B798
- movs r0, 0
- b _0802B7A2
- .align 2, 0
-_0802B794: .4byte gUnknown_203B2CC
-_0802B798:
- bl sub_802B880
- bl sub_802B8D4
- movs r0, 0x1
-_0802B7A2:
- pop {r1}
- bx r1
- thumb_func_end sub_802B720
-
- thumb_func_start sub_802B7A8
-sub_802B7A8:
- ldr r0, _0802B7CC
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x56
- movs r3, 0
- ldrsh r1, [r0, r3]
- subs r0, 0x2
- movs r3, 0
- ldrsh r0, [r0, r3]
- muls r0, r1
- adds r1, r2, 0
- adds r1, 0x50
- movs r3, 0
- ldrsh r1, [r1, r3]
- adds r0, r1
- adds r0, r2, r0
- ldrb r0, [r0]
- bx lr
- .align 2, 0
-_0802B7CC: .4byte gUnknown_203B2CC
- thumb_func_end sub_802B7A8
-
- thumb_func_start sub_802B7D0
-sub_802B7D0:
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl ResetUnusedInputStruct
- ldr r5, _0802B818
- ldr r0, [r5]
- adds r0, 0x74
+ bl nullsub_23
+ ldr r0, _08028674
movs r1, 0
movs r2, 0
- bl sub_800641C
- bl sub_802B9A8
- adds r1, r0, 0
- ldr r0, [r5]
- adds r2, r0, 0
- adds r2, 0x5A
- strh r1, [r2]
- adds r0, 0x38
- bl sub_8013984
- bl sub_802B880
- bl sub_802B8D4
- cmp r4, 0
- beq _0802B812
- ldr r0, [r5]
- adds r0, 0x38
- bl AddMenuCursorSprite
-_0802B812:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802B818: .4byte gUnknown_203B2CC
- thumb_func_end sub_802B7D0
-
- thumb_func_start sub_802B81C
-sub_802B81C:
- push {r4,r5,lr}
- ldr r4, _0802B870
- ldr r2, [r4]
- cmp r2, 0
- beq _0802B86A
- ldr r1, _0802B874
- adds r0, r2, 0
- adds r0, 0x50
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r1, _0802B878
- adds r0, r2, 0
- adds r0, 0x56
- ldrh r0, [r0]
- strh r0, [r1]
- ldr r0, [r2, 0x6C]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x74
- ldr r0, _0802B87C
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x74
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802B86A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802B870: .4byte gUnknown_203B2CC
-_0802B874: .4byte gUnknown_203B2D0
-_0802B878: .4byte gUnknown_203B2D2
-_0802B87C: .4byte gUnknown_80DFBD0
- thumb_func_end sub_802B81C
-
- thumb_func_start sub_802B880
-sub_802B880:
- push {r4,lr}
- ldr r4, _0802B8D0
- ldr r0, [r4]
- adds r0, 0x52
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r1, 0xC
- bl sub_80095E4
- adds r0, 0x2
- lsls r0, 16
- ldr r2, [r4]
- ldr r3, [r2, 0x6C]
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x82
- asrs r3, r0, 16
- lsrs r0, 16
- strh r0, [r1]
- ldr r1, [r2, 0x6C]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r2, r0
- adds r3, 0x2
- adds r2, 0x84
- strh r3, [r2]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x74
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802B8D0: .4byte gUnknown_203B2CC
- thumb_func_end sub_802B880
-
- thumb_func_start sub_802B8D4
-sub_802B8D4:
- push {r4-r7,lr}
- sub sp, 0x8
- ldr r4, _0802B99C
- ldr r0, [r4]
- ldr r0, [r0, 0x6C]
- bl sub_8008C54
- ldr r0, [r4]
- ldr r0, [r0, 0x6C]
- bl sub_80073B8
- ldr r2, _0802B9A0
- ldr r0, [r4]
- ldr r3, [r0, 0x6C]
- movs r0, 0
- str r0, [sp]
- movs r0, 0xA
- movs r1, 0
- bl xxx_call_draw_string
- ldr r0, _0802B9A4
- ldrb r0, [r0, 0x2]
- lsls r0, 3
- adds r0, 0x4
- ldr r3, [r4]
- adds r1, r3, 0
- adds r1, 0x56
- movs r5, 0
- ldrsh r2, [r1, r5]
- adds r2, 0x1
- movs r1, 0x7
- str r1, [sp]
- ldr r1, [r3, 0x6C]
- str r1, [sp, 0x4]
- movs r1, 0
- movs r3, 0x2
- bl sub_8012BC4
- movs r6, 0
- ldr r0, [r4]
- adds r0, 0x52
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r6, r0
- bge _0802B98A
- adds r7, r4, 0
-_0802B930:
- ldr r0, [r7]
- adds r0, 0x38
- adds r1, r6, 0
- bl sub_8013800
- adds r5, r0, 0
- ldr r1, [r7]
- adds r0, r1, 0
- adds r0, 0x56
- movs r3, 0
- ldrsh r2, [r0, r3]
- subs r0, 0x2
movs r3, 0
- ldrsh r0, [r0, r3]
- muls r0, r2
- adds r0, r6
- adds r0, r1, r0
- ldrb r4, [r0]
- ldr r3, [r1, 0x6C]
- movs r0, 0xA
- adds r1, r5, 0
- movs r2, 0x6
- bl sub_803B6B0
- bl sub_802BC7C
- adds r0, r4, 0
- bl GetPokemonMailHeadline
- adds r2, r0, 0
- ldr r0, [r7]
- ldr r3, [r0, 0x6C]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x15
- adds r1, r5, 0
- bl sub_8014FF0
- adds r6, 0x1
- ldr r0, [r7]
- adds r0, 0x52
- movs r5, 0
- ldrsh r0, [r0, r5]
- cmp r6, r0
- blt _0802B930
-_0802B98A:
- ldr r0, _0802B99C
- ldr r0, [r0]
- ldr r0, [r0, 0x6C]
- bl sub_80073E0
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802B99C: .4byte gUnknown_203B2CC
-_0802B9A0: .4byte gUnknown_80DFC04
-_0802B9A4: .4byte gUnknown_80DFBE8
- thumb_func_end sub_802B8D4
-
- thumb_func_start sub_802B9A8
-sub_802B9A8:
- push {r4,r5,lr}
- movs r5, 0
- movs r4, 0
-_0802B9AE:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_8096E14
- lsls r0, 24
- cmp r0, 0
- beq _0802B9C6
- ldr r0, _0802B9D4
- ldr r0, [r0]
- adds r0, r5
- strb r4, [r0]
- adds r5, 0x1
-_0802B9C6:
- adds r4, 0x1
- cmp r4, 0x37
- ble _0802B9AE
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_0802B9D4: .4byte gUnknown_203B2CC
- thumb_func_end sub_802B9A8
-
- thumb_func_start sub_802B9D8
-sub_802B9D8:
- push {r4,lr}
- movs r4, 0
-_0802B9DC:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_8096E14
- lsls r0, 24
- cmp r0, 0
- beq _0802B9EE
- movs r0, 0
- b _0802B9F6
-_0802B9EE:
- adds r4, 0x1
- cmp r4, 0x37
- ble _0802B9DC
- movs r0, 0x1
-_0802B9F6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_802B9D8
-
- thumb_func_start sub_802B9FC
-sub_802B9FC:
- push {r4-r7,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r5, _0802BA80
- movs r0, 0x94
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r5]
- movs r6, 0
- strb r4, [r0, 0x4]
- ldr r0, [r5]
- adds r0, 0x88
- bl sub_801317C
- ldr r1, [r5]
- str r6, [r1, 0x24]
- adds r1, 0x28
- ldr r0, _0802BA84
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldr r1, [r5]
- ldr r2, _0802BA88
- adds r1, 0x40
- adds r0, r2, 0
- ldm r0!, {r3,r4,r7}
- stm r1!, {r3,r4,r7}
- ldm r0!, {r3,r4,r7}
- stm r1!, {r3,r4,r7}
- ldr r1, [r5]
- adds r1, 0x58
- adds r0, r2, 0
- ldm r0!, {r3,r4,r7}
- stm r1!, {r3,r4,r7}
- ldm r0!, {r3,r4,r7}
- stm r1!, {r3,r4,r7}
- ldr r0, [r5]
- adds r0, 0x70
- ldm r2!, {r1,r4,r7}
- stm r0!, {r1,r4,r7}
- ldm r2!, {r3,r4,r7}
- stm r0!, {r3,r4,r7}
- bl ResetUnusedInputStruct
- ldr r0, [r5]
- adds r0, 0x28
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r5]
- str r6, [r0, 0x8]
- bl sub_802BCC4
- bl sub_802BC7C
- movs r0, 0
- bl sub_802BB14
- movs r0, 0x1
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0802BA80: .4byte gUnknown_203B2D4
-_0802BA84: .4byte gUnknown_80DFC34
-_0802BA88: .4byte gUnknown_80DFC18
- thumb_func_end sub_802B9FC
-
- thumb_func_start sub_802BA8C
-sub_802BA8C:
- push {lr}
- ldr r0, _0802BAA4
- ldr r0, [r0]
- ldr r0, [r0]
- cmp r0, 0x1
- beq _0802BAB8
- cmp r0, 0x1
- bgt _0802BAA8
- cmp r0, 0
- beq _0802BAB2
- b _0802BAC2
- .align 2, 0
-_0802BAA4: .4byte gUnknown_203B2D4
-_0802BAA8:
- cmp r0, 0x2
- beq _0802BAC2
- cmp r0, 0x3
- beq _0802BABE
- b _0802BAC2
-_0802BAB2:
- bl sub_802BB98
- b _0802BAC6
-_0802BAB8:
- bl sub_802BC08
- b _0802BAC6
-_0802BABE:
- movs r0, 0x3
- b _0802BAC8
-_0802BAC2:
- movs r0, 0x2
- b _0802BAC8
-_0802BAC6:
- movs r0, 0
-_0802BAC8:
- pop {r1}
- bx r1
- thumb_func_end sub_802BA8C
-
- thumb_func_start sub_802BACC
-sub_802BACC:
- push {r4,r5,lr}
- ldr r4, _0802BB0C
- ldr r2, [r4]
- cmp r2, 0
- beq _0802BB06
- ldr r0, [r2, 0x24]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x28
- ldr r0, _0802BB10
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x28
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802BB06:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802BB0C: .4byte gUnknown_203B2D4
-_0802BB10: .4byte gUnknown_80DFC18
- thumb_func_end sub_802BACC
-
- thumb_func_start sub_802BB14
-sub_802BB14:
- push {lr}
- ldr r1, _0802BB24
- ldr r1, [r1]
- str r0, [r1]
- bl sub_802BB28
- pop {r0}
- bx r0
- .align 2, 0
-_0802BB24: .4byte gUnknown_203B2D4
- thumb_func_end sub_802BB14
-
- thumb_func_start sub_802BB28
-sub_802BB28:
- push {r4,r5,lr}
- sub sp, 0x4
- ldr r5, _0802BB94
- ldr r1, [r5]
- ldr r0, [r1]
- cmp r0, 0
- blt _0802BB8C
- cmp r0, 0x1
- bgt _0802BB8C
- ldr r0, [r1, 0x24]
- bl sub_8008C54
- ldr r0, [r5]
- ldr r0, [r0, 0x24]
- bl sub_80073B8
- ldr r0, [r5]
- ldrb r0, [r0, 0x4]
- bl GetPokemonMailHeadline
- adds r2, r0, 0
- ldr r0, [r5]
- ldr r3, [r0, 0x24]
- movs r4, 0
- str r4, [sp]
- movs r0, 0xA
- movs r1, 0
- bl sub_8014FF0
- ldr r3, [r5]
- ldr r1, [r3, 0x8]
- lsls r1, 2
- adds r0, r3, 0
- adds r0, 0x10
- adds r0, r1
- ldr r2, [r0]
- ldr r3, [r3, 0x24]
- str r4, [sp]
- movs r0, 0x6
- movs r1, 0x14
- bl sub_8014FF0
- ldr r0, [r5]
- ldr r0, [r0, 0x24]
- bl sub_80073E0
- ldr r1, [r5]
- ldr r0, [r1, 0x8]
- adds r0, 0x1
- str r0, [r1, 0x8]
-_0802BB8C:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802BB94: .4byte gUnknown_203B2D4
- thumb_func_end sub_802BB28
-
- thumb_func_start sub_802BB98
-sub_802BB98:
- push {r4,lr}
- ldr r0, _0802BBD4
- ldr r2, [r0]
- ldr r1, [r2, 0xC]
- adds r4, r0, 0
- cmp r1, 0
- beq _0802BBBC
- ldr r0, [r2, 0x20]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0802BBB4
- bl sub_8013E54
-_0802BBB4:
- ldr r1, [r4]
- ldr r0, [r1, 0x20]
- adds r0, 0x1
- str r0, [r1, 0x20]
-_0802BBBC:
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0x88
- ldr r1, [r1, 0x24]
- bl sub_8012A64
- cmp r0, 0x1
- beq _0802BBD8
- cmp r0, 0x2
- beq _0802BBF6
- b _0802BC02
- .align 2, 0
-_0802BBD4: .4byte gUnknown_203B2D4
-_0802BBD8:
- movs r0, 0
- bl PlayMenuSoundEffect
- ldr r0, [r4]
- ldr r0, [r0, 0xC]
- cmp r0, 0
- beq _0802BBEE
- movs r0, 0x1
- bl sub_802BB14
- b _0802BC02
-_0802BBEE:
- movs r0, 0x3
- bl sub_802BB14
- b _0802BC02
-_0802BBF6:
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- bl sub_802BB14
-_0802BC02:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802BB98
-
- thumb_func_start sub_802BC08
-sub_802BC08:
- push {r4,lr}
- ldr r0, _0802BC44
- ldr r3, [r0]
- ldr r2, [r3, 0x8]
- ldr r1, [r3, 0xC]
- adds r4, r0, 0
- cmp r2, r1
- bge _0802BC2E
- ldr r0, [r3, 0x20]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0802BC26
- bl sub_8013E54
-_0802BC26:
- ldr r1, [r4]
- ldr r0, [r1, 0x20]
- adds r0, 0x1
- str r0, [r1, 0x20]
-_0802BC2E:
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0x88
- ldr r1, [r1, 0x24]
- bl sub_8012A64
- cmp r0, 0x1
- beq _0802BC48
- cmp r0, 0x2
- beq _0802BC68
- b _0802BC74
- .align 2, 0
-_0802BC44: .4byte gUnknown_203B2D4
-_0802BC48:
- movs r0, 0
- bl PlayMenuSoundEffect
- ldr r0, [r4]
- ldr r1, [r0, 0x8]
- ldr r0, [r0, 0xC]
- cmp r1, r0
- bge _0802BC60
- movs r0, 0x1
- bl sub_802BB14
- b _0802BC74
-_0802BC60:
- movs r0, 0x3
- bl sub_802BB14
- b _0802BC74
-_0802BC68:
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- bl sub_802BB14
-_0802BC74:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802BC08
-
- thumb_func_start sub_802BC7C
-sub_802BC7C:
- push {r4,lr}
- ldr r4, _0802BCA4
- bl sub_808D3BC
- adds r1, r0, 0
- adds r0, r4, 0
- bl sub_808DA34
- ldr r0, _0802BCA8
- ldr r0, [r0]
- ldrb r0, [r0, 0xB]
- cmp r0, 0x1
- bne _0802BCB0
- adds r0, r4, 0
- adds r0, 0x50
- ldr r1, _0802BCAC
- bl strcpy
- b _0802BCBA
- .align 2, 0
-_0802BCA4: .4byte gAvailablePokemonNames
-_0802BCA8: .4byte gUnknown_203B46C
-_0802BCAC: .4byte gUnknown_80DFC4C
-_0802BCB0:
- adds r0, r4, 0
- adds r0, 0x50
- ldr r1, _0802BCC0
- bl strcpy
-_0802BCBA:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802BCC0: .4byte gUnknown_80DFC50
- thumb_func_end sub_802BC7C
-
- thumb_func_start sub_802BCC4
-sub_802BCC4:
- push {r4,lr}
- ldr r4, _0802BCDC
- ldr r0, [r4]
- ldrb r0, [r0, 0x4]
- bl GetPokemonMailText
- adds r3, r0, 0
- ldr r1, [r4]
- movs r0, 0
- str r0, [r1, 0xC]
- str r3, [r1, 0x10]
- b _0802BD08
- .align 2, 0
-_0802BCDC: .4byte gUnknown_203B2D4
-_0802BCE0:
- cmp r0, 0x23
- bne _0802BD06
- ldrb r2, [r3, 0x1]
- cmp r2, 0x50
- beq _0802BCF0
- adds r1, r3, 0x2
- cmp r2, 0x70
- bne _0802BD02
-_0802BCF0:
- ldr r0, [r4]
- ldr r1, [r0, 0xC]
- adds r1, 0x1
- str r1, [r0, 0xC]
- lsls r1, 2
- adds r0, 0x10
- adds r0, r1
- adds r1, r3, 0x2
- str r1, [r0]
-_0802BD02:
- adds r3, r1, 0
- b _0802BD08
-_0802BD06:
- adds r3, 0x1
-_0802BD08:
- ldrb r0, [r3]
- cmp r0, 0
- bne _0802BCE0
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802BCC4
-
- thumb_func_start sub_802BD14
-sub_802BD14:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- adds r4, r1, 0
- mov r8, r2
- bl sub_802C0E8
- lsls r0, 24
- cmp r0, 0
- beq _0802BD2E
- movs r0, 0
- b _0802BDD4
-_0802BD2E:
- ldr r5, _0802BDE0
- ldr r0, [r5]
- cmp r0, 0
- bne _0802BD40
- movs r0, 0xA4
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r5]
-_0802BD40:
- ldr r0, [r5]
- str r6, [r0, 0x38]
- lsls r1, r6, 1
- adds r1, r6
- lsls r1, 3
- adds r1, 0x40
- adds r1, r0, r1
- str r1, [r0, 0x3C]
- adds r0, 0x40
- bl sub_8006518
- ldr r1, [r5]
- ldr r2, [r1, 0x38]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x40
- ldr r0, _0802BDE4
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldr r2, [r5]
- ldr r1, [r2, 0x3C]
- adds r0, r2, 0
- adds r0, 0xA0
- str r0, [r1, 0x14]
- cmp r4, 0
- beq _0802BD8E
- ldr r1, [r2, 0x38]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r1, r2, 0
- adds r1, 0x48
- adds r1, r0
- ldr r0, [r4]
- str r0, [r1]
-_0802BD8E:
- ldr r0, [r5]
- ldr r0, [r0, 0x3C]
- mov r1, r8
- bl sub_8012D34
- bl ResetUnusedInputStruct
- ldr r0, [r5]
- adds r0, 0x40
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r4, [r5]
- adds r4, 0x4
- bl sub_802C0B8
- adds r1, r0, 0
- adds r0, r4, 0
- mov r2, r8
- adds r3, r6, 0
- bl sub_8013848
- ldr r0, [r5]
- ldr r1, _0802BDE8
- ldrh r1, [r1]
- strh r1, [r0, 0x1C]
- adds r0, 0x4
- bl sub_8013984
- bl sub_802BF30
- bl CreateMailMenu
- movs r0, 0x1
-_0802BDD4:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0802BDE0: .4byte gUnknown_203B2D8
-_0802BDE4: .4byte gUnknown_80DFC74
-_0802BDE8: .4byte gUnknown_203B2DC
- thumb_func_end sub_802BD14
-
- thumb_func_start sub_802BDEC
-sub_802BDEC:
- push {lr}
- lsls r0, 24
- cmp r0, 0
- bne _0802BE08
- ldr r0, _0802BE04
- ldr r0, [r0]
- adds r0, 0x4
- bl sub_8013660
- movs r0, 0
- b _0802BE6E
- .align 2, 0
-_0802BE04: .4byte gUnknown_203B2D8
-_0802BE08:
- ldr r0, _0802BE20
- ldr r0, [r0]
- adds r0, 0x4
- bl GetKeyPress
- cmp r0, 0x2
- beq _0802BE2A
- cmp r0, 0x2
- bgt _0802BE24
- cmp r0, 0x1
- beq _0802BE34
- b _0802BE48
- .align 2, 0
-_0802BE20: .4byte gUnknown_203B2D8
-_0802BE24:
- cmp r0, 0x4
- beq _0802BE3E
- b _0802BE48
-_0802BE2A:
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _0802BE6E
-_0802BE34:
- movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _0802BE6E
-_0802BE3E:
- movs r0, 0x4
- bl PlayMenuSoundEffect
- movs r0, 0x4
- b _0802BE6E
-_0802BE48:
- ldr r0, _0802BE60
- ldr r0, [r0]
- adds r0, 0x4
- movs r1, 0x1
- bl sub_80138B8
- lsls r0, 24
- cmp r0, 0
- bne _0802BE64
- movs r0, 0
- b _0802BE6E
- .align 2, 0
-_0802BE60: .4byte gUnknown_203B2D8
-_0802BE64:
- bl sub_802BF30
- bl CreateMailMenu
- movs r0, 0x1
-_0802BE6E:
- pop {r1}
- bx r1
- thumb_func_end sub_802BDEC
-
- thumb_func_start sub_802BE74
-sub_802BE74:
- ldr r0, _0802BE90
- ldr r1, [r0]
- movs r0, 0x22
- ldrsh r2, [r1, r0]
- movs r3, 0x20
- ldrsh r0, [r1, r3]
- muls r0, r2
- movs r3, 0x1C
- ldrsh r2, [r1, r3]
- adds r0, r2
- adds r1, r0
- ldrb r0, [r1]
- bx lr
- .align 2, 0
-_0802BE90: .4byte gUnknown_203B2D8
- thumb_func_end sub_802BE74
-
- thumb_func_start sub_802BE94
-sub_802BE94:
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl ResetUnusedInputStruct
- ldr r5, _0802BED8
- ldr r0, [r5]
- adds r0, 0x40
- movs r1, 0
- movs r2, 0
- bl sub_800641C
- bl sub_802C0B8
- adds r1, r0, 0
- ldr r0, [r5]
- strh r1, [r0, 0x26]
- adds r0, 0x4
- bl sub_8013984
- bl sub_802BF30
- bl CreateMailMenu
- cmp r4, 0
- beq _0802BED2
- ldr r0, [r5]
- adds r0, 0x4
- bl AddMenuCursorSprite
-_0802BED2:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802BED8: .4byte gUnknown_203B2D8
- thumb_func_end sub_802BE94
-
- thumb_func_start sub_802BEDC
-sub_802BEDC:
- push {r4,r5,lr}
- ldr r4, _0802BF24
- ldr r2, [r4]
- cmp r2, 0
- beq _0802BF1C
- ldr r1, _0802BF28
- ldrh r0, [r2, 0x1C]
- strh r0, [r1]
- ldr r0, [r2, 0x38]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x40
- ldr r0, _0802BF2C
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x40
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802BF1C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802BF24: .4byte gUnknown_203B2D8
-_0802BF28: .4byte gUnknown_203B2DC
-_0802BF2C: .4byte gUnknown_80DFC5C
- thumb_func_end sub_802BEDC
-
- thumb_func_start sub_802BF30
-sub_802BF30:
- push {r4,lr}
- ldr r4, _0802BF9C
- ldr r0, [r4]
- adds r0, 0xA0
- movs r2, 0
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0xA1
- strb r2, [r0]
- ldr r0, [r4]
- adds r0, 0xA2
- movs r1, 0xC
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0xA3
- strb r2, [r0]
- ldr r0, [r4]
- movs r1, 0x1E
- ldrsh r0, [r0, r1]
- movs r1, 0x18
- bl sub_8009614
- adds r0, 0x2
- lsls r0, 16
- ldr r2, [r4]
- ldr r3, [r2, 0x38]
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x4E
- asrs r3, r0, 16
- lsrs r0, 16
- strh r0, [r1]
- ldr r1, [r2, 0x38]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r2, r0
- adds r3, 0x2
- adds r2, 0x50
- strh r3, [r2]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x40
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802BF9C: .4byte gUnknown_203B2D8
- thumb_func_end sub_802BF30
-
- thumb_func_start CreateMailMenu
-CreateMailMenu:
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0xDC
- ldr r4, _0802C060
- ldr r0, [r4]
- ldr r0, [r0, 0x38]
- bl sub_8008C54
- ldr r0, [r4]
- ldr r0, [r0, 0x38]
- bl sub_80073B8
- ldr r1, [r4]
- movs r2, 0x22
- ldrsh r0, [r1, r2]
- lsls r0, 3
- adds r0, 0xA
- ldr r2, _0802C064
- ldr r3, [r1, 0x38]
- movs r1, 0
- str r1, [sp]
- bl xxx_call_draw_string
- movs r6, 0
- ldr r0, [r4]
- movs r3, 0x1E
- ldrsh r0, [r0, r3]
- cmp r6, r0
- bge _0802C09A
- adds r7, r4, 0
- ldr r0, _0802C068
- mov r9, r0
- add r1, sp, 0x5C
- mov r8, r1
-_0802BFE8:
- ldr r1, [r7]
- movs r3, 0x22
- ldrsh r2, [r1, r3]
- movs r3, 0x20
- ldrsh r0, [r1, r3]
- muls r0, r2
- adds r0, r6
- adds r1, r0
- ldrb r0, [r1]
- bl sub_8095FE8
- adds r5, r0, 0
- ldr r0, [r7]
- ldr r1, [r0, 0x38]
- str r1, [sp, 0x4]
- adds r0, 0x4
- adds r1, r6, 0
- bl sub_8013800
- str r0, [sp, 0x4C]
- ldrb r0, [r5]
- cmp r0, 0x1
- bne _0802C06C
- ldr r0, [r7]
- adds r0, 0x4
- adds r1, r6, 0
- bl sub_8013800
- adds r4, r0, 0
- ldr r0, [r7]
- ldr r3, [r0, 0x38]
- movs r0, 0xA
- adds r1, r4, 0
- movs r2, 0x6
- bl sub_803B6B0
- bl sub_808D33C
- adds r1, r0, 0
- mov r0, r9
- bl sub_808DA34
- ldrb r0, [r5, 0x5]
- bl GetPokemonMailHeadline
- adds r1, r0, 0
- mov r0, r8
- mov r2, r9
- bl sub_800D158
- ldr r0, [r7]
- ldr r3, [r0, 0x38]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x15
- adds r1, r4, 0
- mov r2, r8
- bl xxx_call_draw_string
- b _0802C08E
- .align 2, 0
-_0802C060: .4byte gUnknown_203B2D8
-_0802C064: .4byte gMailboxText
-_0802C068: .4byte gAvailablePokemonNames
-_0802C06C:
- adds r0, r5, 0
- add r1, sp, 0x4
- bl sub_803B35C
- adds r0, r5, 0
- bl sub_80968B0
- lsls r0, 24
- cmp r0, 0
- beq _0802C088
- mov r1, sp
- adds r1, 0x47
- movs r0, 0x2
- strb r0, [r1]
-_0802C088:
- add r0, sp, 0x4
- bl sub_803B6D4
-_0802C08E:
- adds r6, 0x1
- ldr r0, [r7]
- movs r1, 0x1E
- ldrsh r0, [r0, r1]
- cmp r6, r0
- blt _0802BFE8
-_0802C09A:
- ldr r0, _0802C0B4
- ldr r0, [r0]
- ldr r0, [r0, 0x38]
- bl sub_80073E0
- add sp, 0xDC
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802C0B4: .4byte gUnknown_203B2D8
- thumb_func_end CreateMailMenu
-
- thumb_func_start sub_802C0B8
-sub_802C0B8:
- push {r4,r5,lr}
- movs r5, 0
- movs r4, 0
-_0802C0BE:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_8096000
- lsls r0, 24
- cmp r0, 0
- bne _0802C0D6
- ldr r0, _0802C0E4
- ldr r0, [r0]
- adds r0, r5
- strb r4, [r0]
- adds r5, 0x1
-_0802C0D6:
- adds r4, 0x1
- cmp r4, 0x3
- ble _0802C0BE
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
+ bl sub_80141B4
+ b _08028AF2
.align 2, 0
-_0802C0E4: .4byte gUnknown_203B2D8
- thumb_func_end sub_802C0B8
-
- thumb_func_start sub_802C0E8
-sub_802C0E8:
- push {r4,lr}
- movs r4, 0
-_0802C0EC:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_8096000
- lsls r0, 24
- cmp r0, 0
- bne _0802C0FE
- movs r0, 0
- b _0802C106
-_0802C0FE:
- adds r4, 0x1
- cmp r4, 0x3
- ble _0802C0EC
- movs r0, 0x1
-_0802C106:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_802C0E8
-
- thumb_func_start sub_802C10C
-sub_802C10C:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- adds r4, r1, 0
- mov r8, r2
- bl sub_802C4A4
- lsls r0, 24
- cmp r0, 0
- beq _0802C126
+_08028674: .4byte gUnknown_80DE01C
+_08028678:
+ ldr r1, [r6]
movs r0, 0
- b _0802C1CC
-_0802C126:
- ldr r5, _0802C1D8
- ldr r0, [r5]
- cmp r0, 0
- bne _0802C138
- movs r0, 0xA8
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r5]
-_0802C138:
- ldr r0, [r5]
- str r6, [r0, 0x3C]
- lsls r1, r6, 1
- adds r1, r6
- lsls r1, 3
- adds r1, 0x44
- adds r1, r0, r1
- str r1, [r0, 0x40]
- adds r0, 0x44
- bl sub_8006518
- ldr r1, [r5]
- ldr r2, [r1, 0x3C]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x44
- ldr r0, _0802C1DC
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldr r2, [r5]
- ldr r1, [r2, 0x40]
- adds r0, r2, 0
- adds r0, 0xA4
- str r0, [r1, 0x14]
- cmp r4, 0
- beq _0802C186
- ldr r1, [r2, 0x3C]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r1, r2, 0
- adds r1, 0x4C
- adds r1, r0
- ldr r0, [r4]
- str r0, [r1]
-_0802C186:
- ldr r0, [r5]
+ str r0, [r1, 0x44]
+ bl sub_8011830
+ ldr r0, [r6]
ldr r0, [r0, 0x40]
- mov r1, r8
- bl sub_8012D34
- bl ResetUnusedInputStruct
- ldr r0, [r5]
- adds r0, 0x44
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r4, [r5]
- adds r4, 0x8
- bl sub_802C474
- adds r1, r0, 0
- adds r0, r4, 0
- mov r2, r8
- adds r3, r6, 0
- bl sub_8013848
- ldr r0, [r5]
- ldr r1, _0802C1E0
- ldrh r1, [r1]
- strh r1, [r0, 0x20]
- adds r0, 0x8
- bl sub_8013984
- bl sub_802C328
- bl sub_802C39C
- movs r0, 0x1
-_0802C1CC:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0802C1D8: .4byte gUnknown_203B2E0
-_0802C1DC: .4byte gUnknown_80DFCB4
-_0802C1E0: .4byte gUnknown_203B2E4
- thumb_func_end sub_802C10C
-
- thumb_func_start sub_802C1E4
-sub_802C1E4:
- push {lr}
- lsls r0, 24
- cmp r0, 0
- bne _0802C200
- ldr r0, _0802C1FC
- ldr r0, [r0]
- adds r0, 0x8
- bl sub_8013660
- movs r0, 0
- b _0802C266
- .align 2, 0
-_0802C1FC: .4byte gUnknown_203B2E0
-_0802C200:
- ldr r0, _0802C218
- ldr r0, [r0]
- adds r0, 0x8
- bl GetKeyPress
- cmp r0, 0x2
- beq _0802C222
- cmp r0, 0x2
- bgt _0802C21C
- cmp r0, 0x1
- beq _0802C22C
- b _0802C240
- .align 2, 0
-_0802C218: .4byte gUnknown_203B2E0
-_0802C21C:
- cmp r0, 0x4
- beq _0802C236
- b _0802C240
-_0802C222:
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _0802C266
-_0802C22C:
- movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _0802C266
-_0802C236:
- movs r0, 0x4
- bl PlayMenuSoundEffect
- movs r0, 0x4
- b _0802C266
-_0802C240:
- ldr r0, _0802C258
- ldr r0, [r0]
- adds r0, 0x8
- movs r1, 0x1
- bl sub_80138B8
- lsls r0, 24
- cmp r0, 0
- bne _0802C25C
- movs r0, 0
- b _0802C266
- .align 2, 0
-_0802C258: .4byte gUnknown_203B2E0
-_0802C25C:
- bl sub_802C328
- bl sub_802C39C
- movs r0, 0x1
-_0802C266:
- pop {r1}
- bx r1
- thumb_func_end sub_802C1E4
-
- thumb_func_start sub_802C26C
-sub_802C26C:
- ldr r0, _0802C288
- ldr r1, [r0]
- movs r0, 0x26
- ldrsh r2, [r1, r0]
- movs r3, 0x24
- ldrsh r0, [r1, r3]
- muls r0, r2
- movs r3, 0x20
- ldrsh r2, [r1, r3]
- adds r0, r2
- adds r1, r0
- ldrb r0, [r1]
- bx lr
- .align 2, 0
-_0802C288: .4byte gUnknown_203B2E0
- thumb_func_end sub_802C26C
-
- thumb_func_start sub_802C28C
-sub_802C28C:
- push {r4,r5,lr}
+ bl sub_8037B28
adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl ResetUnusedInputStruct
- ldr r5, _0802C2D0
- ldr r0, [r5]
- adds r0, 0x44
- movs r1, 0
- movs r2, 0
- bl sub_800641C
- bl sub_802C474
- adds r1, r0, 0
- ldr r0, [r5]
- strh r1, [r0, 0x2A]
- adds r0, 0x8
- bl sub_8013984
- bl sub_802C328
- bl sub_802C39C
+ ldr r0, [r6]
+ str r4, [r0, 0x44]
cmp r4, 0
- beq _0802C2CA
- ldr r0, [r5]
- adds r0, 0x8
- bl AddMenuCursorSprite
-_0802C2CA:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802C2D0: .4byte gUnknown_203B2E0
- thumb_func_end sub_802C28C
-
- thumb_func_start sub_802C2D4
-sub_802C2D4:
- push {r4,r5,lr}
- ldr r4, _0802C31C
- ldr r2, [r4]
- cmp r2, 0
- beq _0802C314
- ldr r1, _0802C320
- ldrh r0, [r2, 0x20]
- strh r0, [r1]
- ldr r0, [r2, 0x3C]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x44
- ldr r0, _0802C324
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x44
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802C314:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802C31C: .4byte gUnknown_203B2E0
-_0802C320: .4byte gUnknown_203B2E4
-_0802C324: .4byte gUnknown_80DFC9C
- thumb_func_end sub_802C2D4
-
- thumb_func_start sub_802C328
-sub_802C328:
- push {r4,lr}
- ldr r4, _0802C398
- ldr r0, [r4]
- ldrh r1, [r0, 0x28]
- adds r0, 0xA4
- movs r2, 0
- strb r1, [r0]
- ldr r0, [r4]
- ldrh r1, [r0, 0x26]
- adds r0, 0xA5
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0xA6
- movs r1, 0xC
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0xA7
- strb r2, [r0]
- ldr r0, [r4]
- movs r1, 0x22
- ldrsh r0, [r0, r1]
- movs r1, 0x18
- bl sub_8009614
- adds r0, 0x2
- lsls r0, 16
- ldr r2, [r4]
- ldr r3, [r2, 0x3C]
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x52
- asrs r3, r0, 16
- lsrs r0, 16
- strh r0, [r1]
- ldr r1, [r2, 0x3C]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r2, r0
- adds r3, 0x2
- adds r2, 0x54
- strh r3, [r2]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x44
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802C398: .4byte gUnknown_203B2E0
- thumb_func_end sub_802C328
-
- thumb_func_start sub_802C39C
-sub_802C39C:
- push {r4-r7,lr}
- sub sp, 0x60
- ldr r7, _0802C3F8
- ldr r0, [r7]
- ldr r0, [r0, 0x3C]
- bl sub_8008C54
- ldr r0, [r7]
- ldr r0, [r0, 0x3C]
- bl sub_80073B8
- ldr r0, [r7]
- movs r1, 0x26
- ldrsh r4, [r0, r1]
- lsls r4, 3
- adds r5, r4, 0
- adds r5, 0xA
- ldr r2, _0802C3FC
- ldr r3, [r0, 0x3C]
- movs r0, 0
- str r0, [sp]
- adds r0, r5, 0
+ bne _0802878A
+ ldr r1, [r0, 0x40]
+ cmp r1, 0x3
+ beq _080286A0
+ cmp r1, 0x4
+ beq _080286C2
+ b _08028748
+_080286A0:
+ adds r0, 0x48
movs r1, 0
- bl xxx_call_draw_string
- adds r4, 0x4
- ldr r1, [r7]
- adds r0, r1, 0
- adds r0, 0xA6
- ldrb r0, [r0]
- lsls r0, 3
- adds r5, r4, r0
- movs r3, 0x26
- ldrsh r2, [r1, r3]
- adds r2, 0x1
- movs r0, 0x7
- str r0, [sp]
- ldr r0, [r1, 0x3C]
- str r0, [sp, 0x4]
- adds r0, r5, 0
+ movs r2, 0x30
+ bl MemoryFill8
+ ldr r0, [r6]
+ adds r0, 0x78
movs r1, 0
- movs r3, 0x2
- bl sub_8012BC4
- movs r6, 0
- b _0802C452
- .align 2, 0
-_0802C3F8: .4byte gUnknown_203B2E0
-_0802C3FC: .4byte gBulletinBoardText
-_0802C400:
- ldr r1, [r7]
- movs r3, 0x26
- ldrsh r2, [r1, r3]
- movs r3, 0x24
- ldrsh r0, [r1, r3]
- muls r0, r2
- adds r0, r6
- adds r1, r0
- ldrb r5, [r1]
- adds r0, r5, 0
- bl sub_8096574
- adds r4, r0, 0
- ldr r0, [r7]
- ldr r1, [r0, 0x3C]
- str r1, [sp, 0x8]
- adds r0, 0x8
- adds r1, r6, 0
- bl sub_8013800
- str r0, [sp, 0x50]
- adds r0, r4, 0
- add r1, sp, 0x8
- bl sub_803B35C
- adds r0, r5, 0
- bl sub_8096574
- bl sub_80968B0
- lsls r0, 24
- cmp r0, 0
- beq _0802C44A
- mov r1, sp
- adds r1, 0x4B
- movs r0, 0x2
- strb r0, [r1]
-_0802C44A:
- add r0, sp, 0x8
- bl sub_803B6D4
- adds r6, 0x1
-_0802C452:
- ldr r0, [r7]
- movs r1, 0x22
- ldrsh r0, [r0, r1]
- cmp r6, r0
- blt _0802C400
- ldr r0, _0802C470
- ldr r0, [r0]
- ldr r0, [r0, 0x3C]
- bl sub_80073E0
- add sp, 0x60
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802C470: .4byte gUnknown_203B2E0
- thumb_func_end sub_802C39C
-
- thumb_func_start sub_802C474
-sub_802C474:
- push {r4,r5,lr}
- movs r5, 0
- movs r4, 0
-_0802C47A:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_809658C
- lsls r0, 24
- cmp r0, 0
- bne _0802C492
- ldr r0, _0802C4A0
- ldr r0, [r0]
- adds r0, r5
- strb r4, [r0]
- adds r5, 0x1
-_0802C492:
- adds r4, 0x1
- cmp r4, 0x7
- ble _0802C47A
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_0802C4A0: .4byte gUnknown_203B2E0
- thumb_func_end sub_802C474
-
- thumb_func_start sub_802C4A4
-sub_802C4A4:
- push {r4,lr}
- movs r4, 0
-_0802C4A8:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_809658C
- lsls r0, 24
- cmp r0, 0
- bne _0802C4BA
- movs r0, 0
- b _0802C4C2
-_0802C4BA:
- adds r4, 0x1
- cmp r4, 0x7
- ble _0802C4A8
- movs r0, 0x1
-_0802C4C2:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_802C4A4
-
- thumb_func_start sub_802C4C8
-sub_802C4C8:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- adds r4, r1, 0
- mov r8, r2
- bl sub_802C83C
- lsls r0, 24
- cmp r0, 0
- beq _0802C4E2
- movs r0, 0
- b _0802C580
-_0802C4E2:
- ldr r5, _0802C58C
- movs r0, 0xA8
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r5]
- str r6, [r0, 0x3C]
- lsls r1, r6, 1
- adds r1, r6
- lsls r1, 3
- adds r1, 0x44
- adds r1, r0, r1
- str r1, [r0, 0x40]
- adds r0, 0x44
- bl sub_8006518
- ldr r1, [r5]
- ldr r2, [r1, 0x3C]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x44
- ldr r0, _0802C590
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldr r2, [r5]
- ldr r1, [r2, 0x40]
- adds r0, r2, 0
- adds r0, 0xA4
- str r0, [r1, 0x14]
- cmp r4, 0
- beq _0802C53A
- ldr r1, [r2, 0x3C]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
+ movs r2, 0x30
+ bl MemoryFill8
+ ldr r2, [r6]
+ ldr r0, [r2, 0x40]
adds r1, r2, 0
- adds r1, 0x4C
- adds r1, r0
- ldr r0, [r4]
- str r0, [r1]
-_0802C53A:
- ldr r0, [r5]
- ldr r0, [r0, 0x40]
- mov r1, r8
- bl sub_8012D34
- bl ResetUnusedInputStruct
- ldr r0, [r5]
- adds r0, 0x44
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r4, [r5]
- adds r4, 0x8
- bl sub_802C80C
- adds r1, r0, 0
- adds r0, r4, 0
- mov r2, r8
- adds r3, r6, 0
- bl sub_8013848
- ldr r0, [r5]
- ldr r1, _0802C594
- ldrh r1, [r1]
- strh r1, [r0, 0x20]
- adds r0, 0x8
- bl sub_8013984
- bl sub_802C6DC
- bl sub_802C750
- movs r0, 0x1
-_0802C580:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0802C58C: .4byte gUnknown_203B2E8
-_0802C590: .4byte gUnknown_80DFCFC
-_0802C594: .4byte gUnknown_203B2EC
- thumb_func_end sub_802C4C8
-
- thumb_func_start sub_802C598
-sub_802C598:
- push {lr}
- lsls r0, 24
- cmp r0, 0
- bne _0802C5B4
- ldr r0, _0802C5B0
- ldr r0, [r0]
- adds r0, 0x8
- bl sub_8013660
- movs r0, 0
- b _0802C61A
- .align 2, 0
-_0802C5B0: .4byte gUnknown_203B2E8
-_0802C5B4:
- ldr r0, _0802C5CC
- ldr r0, [r0]
- adds r0, 0x8
- bl GetKeyPress
- cmp r0, 0x2
- beq _0802C5D6
- cmp r0, 0x2
- bgt _0802C5D0
- cmp r0, 0x1
- beq _0802C5E0
- b _0802C5F4
- .align 2, 0
-_0802C5CC: .4byte gUnknown_203B2E8
-_0802C5D0:
- cmp r0, 0x4
- beq _0802C5EA
- b _0802C5F4
-_0802C5D6:
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _0802C61A
-_0802C5E0:
- movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _0802C61A
-_0802C5EA:
- movs r0, 0x4
- bl PlayMenuSoundEffect
- movs r0, 0x4
- b _0802C61A
-_0802C5F4:
- ldr r0, _0802C60C
- ldr r0, [r0]
- adds r0, 0x8
- movs r1, 0x1
- bl sub_80138B8
- lsls r0, 24
- cmp r0, 0
- bne _0802C610
- movs r0, 0
- b _0802C61A
- .align 2, 0
-_0802C60C: .4byte gUnknown_203B2E8
-_0802C610:
- bl sub_802C6DC
- bl sub_802C750
- movs r0, 0x1
-_0802C61A:
- pop {r1}
- bx r1
- thumb_func_end sub_802C598
-
- thumb_func_start sub_802C620
-sub_802C620:
- ldr r0, _0802C63C
- ldr r1, [r0]
- movs r0, 0x26
- ldrsh r2, [r1, r0]
- movs r3, 0x24
- ldrsh r0, [r1, r3]
- muls r0, r2
- movs r3, 0x20
- ldrsh r2, [r1, r3]
- adds r0, r2
- adds r1, r0
- ldrb r0, [r1]
- bx lr
- .align 2, 0
-_0802C63C: .4byte gUnknown_203B2E8
- thumb_func_end sub_802C620
-
- thumb_func_start sub_802C640
-sub_802C640:
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl ResetUnusedInputStruct
- ldr r5, _0802C684
- ldr r0, [r5]
- adds r0, 0x44
+ adds r1, 0x48
+ adds r2, 0x78
+ b _08028740
+_080286C2:
+ adds r0, 0xA8
movs r1, 0
- movs r2, 0
- bl sub_800641C
- bl sub_802C80C
- adds r1, r0, 0
- ldr r0, [r5]
- strh r1, [r0, 0x2A]
- adds r0, 0x8
- bl sub_8013984
- bl sub_802C6DC
- bl sub_802C750
- cmp r4, 0
- beq _0802C67E
- ldr r0, [r5]
- adds r0, 0x8
- bl AddMenuCursorSprite
-_0802C67E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802C684: .4byte gUnknown_203B2E8
- thumb_func_end sub_802C640
-
- thumb_func_start sub_802C688
-sub_802C688:
- push {r4,r5,lr}
- ldr r4, _0802C6D0
- ldr r2, [r4]
- cmp r2, 0
- beq _0802C6C8
- ldr r1, _0802C6D4
- ldrh r0, [r2, 0x20]
- strh r0, [r1]
- ldr r0, [r2, 0x3C]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x44
- ldr r0, _0802C6D8
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x44
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802C6C8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802C6D0: .4byte gUnknown_203B2E8
-_0802C6D4: .4byte gUnknown_203B2EC
-_0802C6D8: .4byte gUnknown_80DFCE4
- thumb_func_end sub_802C688
-
- thumb_func_start sub_802C6DC
-sub_802C6DC:
- push {r4,lr}
- ldr r4, _0802C74C
- ldr r0, [r4]
- ldrh r1, [r0, 0x28]
- adds r0, 0xA4
- movs r2, 0
- strb r1, [r0]
- ldr r0, [r4]
- ldrh r1, [r0, 0x26]
- adds r0, 0xA5
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0xA6
- movs r1, 0xC
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0xA7
- strb r2, [r0]
- ldr r0, [r4]
- movs r1, 0x22
- ldrsh r0, [r0, r1]
- movs r1, 0x18
- bl sub_8009614
- adds r0, 0x2
- lsls r0, 16
- ldr r2, [r4]
- ldr r3, [r2, 0x3C]
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x52
- asrs r3, r0, 16
- lsrs r0, 16
- strh r0, [r1]
- ldr r1, [r2, 0x3C]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r2, r0
- adds r3, 0x2
- adds r2, 0x54
- strh r3, [r2]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x44
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802C74C: .4byte gUnknown_203B2E8
- thumb_func_end sub_802C6DC
-
- thumb_func_start sub_802C750
-sub_802C750:
- push {r4-r6,lr}
- sub sp, 0x60
- ldr r6, _0802C7AC
- ldr r0, [r6]
- ldr r0, [r0, 0x3C]
- bl sub_8008C54
- ldr r0, [r6]
- ldr r0, [r0, 0x3C]
- bl sub_80073B8
+ movs r2, 0x88
+ bl MemoryFill8
ldr r0, [r6]
- movs r1, 0x26
- ldrsh r4, [r0, r1]
- lsls r4, 3
- adds r5, r4, 0
- adds r5, 0xA
- ldr r2, _0802C7B0
- ldr r3, [r0, 0x3C]
- movs r0, 0
- str r0, [sp]
- adds r0, r5, 0
+ movs r5, 0x98
+ lsls r5, 1
+ adds r0, r5
movs r1, 0
- bl xxx_call_draw_string
- adds r4, 0x4
+ movs r2, 0x88
+ bl MemoryFill8
ldr r1, [r6]
adds r0, r1, 0
- adds r0, 0xA6
+ adds r0, 0xE0
+ strh r4, [r0]
+ movs r2, 0xB4
+ lsls r2, 1
+ adds r0, r1, r2
+ strh r4, [r0]
+ movs r3, 0x86
+ lsls r3, 2
+ adds r0, r1, r3
ldrb r0, [r0]
- lsls r0, 3
- adds r5, r4, r0
- movs r3, 0x26
- ldrsh r2, [r1, r3]
- adds r2, 0x1
- movs r0, 0x7
- str r0, [sp]
- ldr r0, [r1, 0x3C]
- str r0, [sp, 0x4]
- adds r0, r5, 0
- movs r1, 0
- movs r3, 0x2
- bl sub_8012BC4
- movs r5, 0
- b _0802C7EC
- .align 2, 0
-_0802C7AC: .4byte gUnknown_203B2E8
-_0802C7B0: .4byte gUnknown_80DFD14
-_0802C7B4:
+ bl sub_8095228
ldr r1, [r6]
- movs r3, 0x26
- ldrsh r2, [r1, r3]
- movs r3, 0x24
- ldrsh r0, [r1, r3]
- muls r0, r2
- adds r0, r5
- adds r1, r0
- ldrb r0, [r1]
- bl sub_8096AB4
- adds r4, r0, 0
- ldr r0, [r6]
- ldr r1, [r0, 0x3C]
- str r1, [sp, 0x8]
- adds r0, 0x8
- adds r1, r5, 0
- bl sub_8013800
- str r0, [sp, 0x50]
- adds r0, r4, 0
- add r1, sp, 0x8
- bl sub_803B35C
- add r0, sp, 0x8
- bl sub_803B6D4
- adds r5, 0x1
-_0802C7EC:
- ldr r0, [r6]
- movs r1, 0x22
- ldrsh r0, [r0, r1]
- cmp r5, r0
- blt _0802C7B4
- ldr r0, _0802C808
- ldr r0, [r0]
- ldr r0, [r0, 0x3C]
- bl sub_80073E0
- add sp, 0x60
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0802C808: .4byte gUnknown_203B2E8
- thumb_func_end sub_802C750
-
- thumb_func_start sub_802C80C
-sub_802C80C:
- push {r4,r5,lr}
- movs r5, 0
- movs r4, 0
-_0802C812:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_8096ACC
- lsls r0, 24
- cmp r0, 0
- bne _0802C82A
- ldr r0, _0802C838
- ldr r0, [r0]
- adds r0, r5
- strb r4, [r0]
- adds r5, 0x1
-_0802C82A:
- adds r4, 0x1
- cmp r4, 0x7
- ble _0802C812
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_0802C838: .4byte gUnknown_203B2E8
- thumb_func_end sub_802C80C
-
- thumb_func_start sub_802C83C
-sub_802C83C:
- push {r4,lr}
- movs r4, 0
-_0802C840:
- lsls r0, r4, 24
- lsrs r0, 24
- bl sub_8096ACC
- lsls r0, 24
- cmp r0, 0
- bne _0802C852
- movs r0, 0
- b _0802C85A
-_0802C852:
- adds r4, 0x1
- cmp r4, 0x7
- ble _0802C840
- movs r0, 0x1
-_0802C85A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_802C83C
-
- thumb_func_start sub_802C860
-sub_802C860:
- push {r4-r6,lr}
- adds r6, r0, 0
- bl sub_802C83C
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _0802C890
- ldr r4, _0802C88C
- movs r0, 0xFE
- lsls r0, 1
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
- str r5, [r0, 0x68]
- str r6, [r0]
- movs r0, 0
- bl sub_802C910
- movs r0, 0x1
- b _0802C892
- .align 2, 0
-_0802C88C: .4byte gUnknown_203B2F0
-_0802C890:
- movs r0, 0
-_0802C892:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_802C860
-
- thumb_func_start sub_802C898
-sub_802C898:
- push {lr}
- ldr r0, _0802C8B0
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- cmp r0, 0x5
- bhi _0802C8E8
- lsls r0, 2
- ldr r1, _0802C8B4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802C8B0: .4byte gUnknown_203B2F0
-_0802C8B4: .4byte _0802C8B8
- .align 2, 0
-_0802C8B8:
- .4byte _0802C8D0
- .4byte _0802C8D0
- .4byte _0802C8D6
- .4byte _0802C8DC
- .4byte _0802C8E2
- .4byte _0802C8E8
-_0802C8D0:
- bl sub_802CC00
- b _0802C8EC
-_0802C8D6:
- bl sub_802CC70
- b _0802C8EC
-_0802C8DC:
- bl sub_802CD38
- b _0802C8EC
-_0802C8E2:
- bl sub_802CDB8
- b _0802C8EC
-_0802C8E8:
- movs r0, 0x3
- b _0802C8EE
-_0802C8EC:
- movs r0, 0
-_0802C8EE:
- pop {r1}
- bx r1
- thumb_func_end sub_802C898
-
- thumb_func_start sub_802C8F4
-sub_802C8F4:
- push {r4,lr}
- ldr r4, _0802C90C
- ldr r0, [r4]
- cmp r0, 0
- beq _0802C906
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802C906:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802C90C: .4byte gUnknown_203B2F0
- thumb_func_end sub_802C8F4
-
- thumb_func_start sub_802C910
-sub_802C910:
- push {lr}
- ldr r1, _0802C924
- ldr r1, [r1]
- str r0, [r1, 0x4]
- bl sub_802C928
- bl sub_802C9D8
- pop {r0}
- bx r0
- .align 2, 0
-_0802C924: .4byte gUnknown_203B2F0
- thumb_func_end sub_802C910
-
- thumb_func_start sub_802C928
-sub_802C928:
- push {r4-r7,lr}
- ldr r4, _0802C94C
- ldr r0, [r4]
- movs r1, 0xCE
- lsls r1, 1
- adds r0, r1
- bl sub_8006518
- ldr r1, [r4]
- ldr r0, [r1, 0x4]
- cmp r0, 0x2
- beq _0802C954
- cmp r0, 0x3
- beq _0802C980
- movs r2, 0
- ldr r3, _0802C950
- b _0802C998
- .align 2, 0
-_0802C94C: .4byte gUnknown_203B2F0
-_0802C950: .4byte gUnknown_80DFD28
-_0802C954:
- bl sub_802CAA4
- ldr r2, [r4]
- movs r0, 0xE6
- lsls r0, 1
- adds r2, r0
- ldr r1, _0802C97C
- ldm r1!, {r3,r5,r6}
- stm r2!, {r3,r5,r6}
- ldm r1!, {r3,r5,r7}
- stm r2!, {r3,r5,r7}
- ldr r1, [r4]
- adds r0, r1, r0
- movs r6, 0x86
- lsls r6, 1
- adds r1, r6
- bl sub_8012CAC
- b _0802C9B8
- .align 2, 0
-_0802C97C: .4byte gUnknown_80DFD40
-_0802C980:
- movs r7, 0xF2
- lsls r7, 1
- adds r1, r7
- ldr r0, _0802C994
+ adds r1, 0xA8
ldm r0!, {r2-r4}
stm r1!, {r2-r4}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- b _0802C9B8
- .align 2, 0
-_0802C994: .4byte gUnknown_80DFD58
-_0802C998:
- ldr r0, [r4]
- lsls r1, r2, 1
- adds r1, r2
- lsls r1, 3
- adds r0, r1
- movs r1, 0xCE
- lsls r1, 1
- adds r0, r1
- adds r1, r3, 0
- ldm r1!, {r5-r7}
- stm r0!, {r5-r7}
- ldm r1!, {r5-r7}
- stm r0!, {r5-r7}
- adds r2, 0x1
- cmp r2, 0x3
- ble _0802C998
-_0802C9B8:
- bl ResetUnusedInputStruct
- ldr r0, _0802C9D4
- ldr r0, [r0]
- movs r1, 0xCE
- lsls r1, 1
- adds r0, r1
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802C9D4: .4byte gUnknown_203B2F0
- thumb_func_end sub_802C928
-
- thumb_func_start sub_802C9D8
-sub_802C9D8:
- push {r4,lr}
- sub sp, 0x8
- ldr r1, _0802C9F4
- ldr r0, [r1]
- ldr r0, [r0, 0x4]
- adds r4, r1, 0
- cmp r0, 0x5
- bhi _0802CA9C
- lsls r0, 2
- ldr r1, _0802C9F8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802C9F4: .4byte gUnknown_203B2F0
-_0802C9F8: .4byte _0802C9FC
- .align 2, 0
-_0802C9FC:
- .4byte _0802CA14
- .4byte _0802CA20
- .4byte _0802CA28
- .4byte _0802CA48
- .4byte _0802CA80
- .4byte _0802CA9C
-_0802CA14:
- movs r0, 0
- movs r1, 0
- movs r2, 0x4
- bl sub_802C4C8
- b _0802CA9C
-_0802CA20:
- movs r0, 0x1
- bl sub_802C640
- b _0802CA9C
-_0802CA28:
- bl sub_802C750
- ldr r0, _0802CA44
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x6C
- movs r3, 0x86
- lsls r3, 1
- adds r1, r2, r3
- ldr r2, [r2, 0x68]
- str r2, [sp]
- movs r2, 0x2
- b _0802CA6E
- .align 2, 0
-_0802CA44: .4byte gUnknown_203B2F0
-_0802CA48:
- bl sub_802CBAC
- bl sub_802C750
- ldr r4, _0802CA7C
- ldr r0, [r4]
- adds r0, 0x6C
- movs r1, 0
- bl sub_8012EA4
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0xBC
- movs r2, 0xA6
- lsls r2, 1
- adds r1, r2
- movs r2, 0x6
- str r2, [sp]
- movs r2, 0x3
-_0802CA6E:
- str r2, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_8012D60
- b _0802CA9C
- .align 2, 0
-_0802CA7C: .4byte gUnknown_203B2F0
-_0802CA80:
- ldr r0, [r4]
- ldrb r0, [r0, 0xC]
- bl sub_8096AB4
- ldr r1, [r4]
- adds r1, 0x10
- bl sub_803B35C
- ldr r0, [r4]
- movs r1, 0x3
- str r1, [r0, 0x10]
- adds r0, 0x10
- bl sub_802DE84
-_0802CA9C:
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802C9D8
-
- thumb_func_start sub_802CAA4
-sub_802CAA4:
- push {r4-r7,lr}
- movs r7, 0
- ldr r5, _0802CAC8
- ldr r0, [r5]
- ldrb r0, [r0, 0xC]
- bl sub_8096AB4
- adds r4, r0, 0
- ldr r2, [r5]
- ldr r0, [r2]
- cmp r0, 0
- bne _0802CB26
- ldrb r0, [r4]
- cmp r0, 0x5
- beq _0802CACC
- cmp r0, 0x6
- beq _0802CB10
- b _0802CB26
- .align 2, 0
-_0802CAC8: .4byte gUnknown_203B2F0
-_0802CACC:
- movs r0, 0x86
- lsls r0, 1
- adds r1, r2, r0
- ldr r0, _0802CAFC
- str r0, [r1]
- adds r0, r4, 0
- bl sub_809693C
- lsls r0, 24
- cmp r0, 0
- bne _0802CAEE
- ldrb r0, [r4, 0x4]
- bl sub_80A2824
- lsls r0, 24
- cmp r0, 0
- bne _0802CB00
-_0802CAEE:
- ldr r0, [r5]
- movs r1, 0x88
- lsls r1, 1
- adds r0, r1
- movs r1, 0x1
- negs r1, r1
- b _0802CB0A
- .align 2, 0
-_0802CAFC: .4byte gUnknown_80DFD70
-_0802CB00:
- ldr r0, [r5]
- movs r1, 0x88
- lsls r1, 1
- adds r0, r1
- movs r1, 0x2
-_0802CB0A:
- str r1, [r0]
- adds r7, 0x1
- b _0802CB26
-_0802CB10:
- movs r0, 0x86
- lsls r0, 1
- adds r1, r2, r0
- ldr r0, _0802CB9C
- str r0, [r1]
- movs r0, 0x88
- lsls r0, 1
- adds r1, r2, r0
- movs r0, 0x3
- str r0, [r1]
- movs r7, 0x1
-_0802CB26:
- ldr r4, _0802CBA0
- ldr r6, [r4]
- lsls r1, r7, 3
- movs r0, 0x86
- lsls r0, 1
- adds r3, r6, r0
- adds r2, r3, r1
- ldr r0, _0802CBA4
- ldr r0, [r0]
- str r0, [r2]
- movs r0, 0x88
- lsls r0, 1
- adds r5, r6, r0
- adds r1, r5, r1
- movs r0, 0x4
- str r0, [r1]
- adds r7, 0x1
- lsls r1, r7, 3
- adds r2, r3, r1
- ldr r0, _0802CBA8
- ldr r0, [r0]
- str r0, [r2]
- adds r1, r5, r1
- movs r0, 0x7
- str r0, [r1]
- adds r7, 0x1
- lsls r1, r7, 3
- adds r3, r1
- movs r0, 0
- str r0, [r3]
- adds r1, r5, r1
- movs r0, 0x1
- str r0, [r1]
- movs r3, 0
- mov r12, r4
- cmp r3, r7
- bge _0802CB8C
- adds r4, r6, 0
- adds r1, r5, 0
- movs r5, 0x1
- negs r5, r5
-_0802CB78:
- ldr r2, [r1]
- cmp r2, r5
- beq _0802CB84
- ldr r0, [r4, 0x68]
- cmp r2, r0
- beq _0802CB94
-_0802CB84:
- adds r1, 0x8
- adds r3, 0x1
- cmp r3, r7
- blt _0802CB78
-_0802CB8C:
- mov r0, r12
- ldr r1, [r0]
- movs r0, 0x7
- str r0, [r1, 0x68]
-_0802CB94:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802CB9C: .4byte gUnknown_80DFD7C
-_0802CBA0: .4byte gUnknown_203B2F0
-_0802CBA4: .4byte gUnknown_80D494C
-_0802CBA8: .4byte gUnknown_80D4970
- thumb_func_end sub_802CAA4
-
- thumb_func_start sub_802CBAC
-sub_802CBAC:
- ldr r0, _0802CBF4
- ldr r0, [r0]
- mov r12, r0
- movs r3, 0
- movs r1, 0xA6
- lsls r1, 1
- add r1, r12
- ldr r0, _0802CBF8
- ldr r0, [r0]
- str r0, [r1]
- movs r1, 0xA8
- lsls r1, 1
- add r1, r12
- movs r0, 0x5
- str r0, [r1]
- movs r2, 0x1
- movs r1, 0xAA
- lsls r1, 1
- add r1, r12
- ldr r0, _0802CBFC
- ldr r0, [r0]
- str r0, [r1]
- movs r1, 0xAC
- lsls r1, 1
- add r1, r12
- movs r0, 0x6
- str r0, [r1]
- movs r0, 0xAE
- lsls r0, 1
- add r0, r12
- str r3, [r0]
- movs r0, 0xB0
- lsls r0, 1
- add r0, r12
- str r2, [r0]
- bx lr
- .align 2, 0
-_0802CBF4: .4byte gUnknown_203B2F0
-_0802CBF8: .4byte gUnknown_80D4920
-_0802CBFC: .4byte gUnknown_80D4928
- thumb_func_end sub_802CBAC
-
- thumb_func_start sub_802CC00
-sub_802CC00:
- push {lr}
- movs r0, 0x1
- bl sub_802C598
- cmp r0, 0x4
- bhi _0802CC6A
- lsls r0, 2
- ldr r1, _0802CC18
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802CC18: .4byte _0802CC1C
- .align 2, 0
-_0802CC1C:
- .4byte _0802CC6A
- .4byte _0802CC6A
- .4byte _0802CC60
- .4byte _0802CC30
- .4byte _0802CC48
-_0802CC30:
- bl sub_802C620
- ldr r1, _0802CC44
- ldr r1, [r1]
- strb r0, [r1, 0xC]
- movs r0, 0x2
- bl sub_802C910
- b _0802CC6A
- .align 2, 0
-_0802CC44: .4byte gUnknown_203B2F0
-_0802CC48:
- bl sub_802C620
- ldr r1, _0802CC5C
- ldr r1, [r1]
- strb r0, [r1, 0xC]
- movs r0, 0x4
- bl sub_802C910
- b _0802CC6A
- .align 2, 0
-_0802CC5C: .4byte gUnknown_203B2F0
-_0802CC60:
- bl sub_802C688
- movs r0, 0x5
- bl sub_802C910
-_0802CC6A:
- pop {r0}
- bx r0
- thumb_func_end sub_802CC00
-
- thumb_func_start sub_802CC70
-sub_802CC70:
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- bl sub_802C598
- ldr r4, _0802CCB4
- ldr r0, [r4]
- adds r0, 0x6C
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _0802CCA0
- ldr r0, [r4]
- adds r0, 0x6C
- mov r1, sp
- bl sub_8013114
- ldr r1, [sp]
- cmp r1, 0x1
- beq _0802CCA0
- ldr r0, [r4]
- str r1, [r0, 0x68]
-_0802CCA0:
- ldr r0, [sp]
- subs r0, 0x1
- cmp r0, 0x6
- bhi _0802CD2E
- lsls r0, 2
- ldr r1, _0802CCB8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802CCB4: .4byte gUnknown_203B2F0
-_0802CCB8: .4byte _0802CCBC
- .align 2, 0
-_0802CCBC:
- .4byte _0802CD28
- .4byte _0802CCD8
- .4byte _0802CCF4
- .4byte _0802CD18
- .4byte _0802CD2E
- .4byte _0802CD2E
- .4byte _0802CD20
-_0802CCD8:
- ldr r0, _0802CCEC
- bl sub_8011988
- ldr r0, _0802CCF0
- ldr r0, [r0]
- ldrb r0, [r0, 0xC]
- bl sub_8096AB4
- movs r1, 0x6
- b _0802CD06
- .align 2, 0
-_0802CCEC: .4byte 0x00000133
-_0802CCF0: .4byte gUnknown_203B2F0
-_0802CCF4:
- ldr r0, _0802CD10
- bl sub_8011988
- ldr r0, _0802CD14
- ldr r0, [r0]
- ldrb r0, [r0, 0xC]
- bl sub_8096AB4
- movs r1, 0x5
-_0802CD06:
- strb r1, [r0]
- movs r0, 0x1
- bl sub_802C910
- b _0802CD2E
- .align 2, 0
-_0802CD10: .4byte 0x00000133
-_0802CD14: .4byte gUnknown_203B2F0
-_0802CD18:
- movs r0, 0x3
- bl sub_802C910
- b _0802CD2E
-_0802CD20:
- movs r0, 0x4
- bl sub_802C910
- b _0802CD2E
-_0802CD28:
- movs r0, 0x1
- bl sub_802C910
-_0802CD2E:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802CC70
-
- thumb_func_start sub_802CD38
-sub_802CD38:
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- bl sub_802C598
- ldr r4, _0802CD78
- ldr r0, [r4]
- adds r0, 0x6C
- bl sub_8012FD8
- ldr r0, [r4]
- adds r0, 0xBC
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _0802CD66
- ldr r0, [r4]
- adds r0, 0xBC
- mov r1, sp
- bl sub_8013114
-_0802CD66:
- ldr r0, [sp]
- cmp r0, 0x5
- beq _0802CD88
- cmp r0, 0x5
- bgt _0802CD7C
- cmp r0, 0x1
- beq _0802CD80
- b _0802CDB0
- .align 2, 0
-_0802CD78: .4byte gUnknown_203B2F0
-_0802CD7C:
- cmp r0, 0x6
- bne _0802CDB0
-_0802CD80:
- movs r0, 0x1
- bl sub_802C910
- b _0802CDB0
-_0802CD88:
- ldr r0, [r4]
- ldrb r0, [r0, 0xC]
- bl sub_8096C3C
- bl sub_8096C80
- bl sub_802C83C
- lsls r0, 24
- cmp r0, 0
- beq _0802CDAA
- bl sub_802C688
- movs r0, 0x5
- bl sub_802C910
- b _0802CDB0
-_0802CDAA:
- movs r0, 0x1
- bl sub_802C910
-_0802CDB0:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802CD38
-
- thumb_func_start sub_802CDB8
-sub_802CDB8:
- push {lr}
- bl sub_802DEE0
- cmp r0, 0x1
- bls _0802CDD0
- cmp r0, 0x3
- bhi _0802CDD0
- bl sub_802DF24
- movs r0, 0x1
- bl sub_802C910
-_0802CDD0:
- pop {r0}
- bx r0
- thumb_func_end sub_802CDB8
-
- thumb_func_start sub_802CDD4
-sub_802CDD4:
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r4, _0802CE54
- ldr r0, [r4]
- cmp r0, 0
- bne _0802CDEA
- movs r0, 0xA0
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
-_0802CDEA:
- ldr r0, [r4]
- str r5, [r0, 0x34]
- lsls r1, r5, 1
- adds r1, r5
- lsls r1, 3
- adds r1, 0x3C
- adds r1, r0, r1
- str r1, [r0, 0x38]
- adds r0, 0x3C
- bl sub_8006518
- ldr r1, [r4]
- ldr r2, [r1, 0x34]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x3C
- ldr r0, _0802CE58
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldr r1, [r4]
- ldr r0, [r1, 0x38]
- adds r1, 0x9C
- str r1, [r0, 0x14]
- movs r1, 0x4
- bl sub_8012D34
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x3C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- movs r1, 0x5
- movs r2, 0x4
- adds r3, r5, 0
- bl sub_8013848
- bl sub_802CF5C
- bl sub_802CFD0
- movs r0, 0x1
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0802CE54: .4byte gUnknown_203B2F4
-_0802CE58: .4byte gUnknown_80DFDA4
- thumb_func_end sub_802CDD4
-
- thumb_func_start sub_802CE5C
-sub_802CE5C:
- push {r4,lr}
- lsls r0, 24
- cmp r0, 0
- bne _0802CE74
- ldr r0, _0802CE70
- ldr r0, [r0]
- bl sub_8013660
- movs r0, 0
- b _0802CEB4
- .align 2, 0
-_0802CE70: .4byte gUnknown_203B2F4
-_0802CE74:
- ldr r4, _0802CE90
- ldr r0, [r4]
- bl GetKeyPress
- cmp r0, 0x1
- beq _0802CE94
- cmp r0, 0x2
- bne _0802CE98
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _0802CEB4
- .align 2, 0
-_0802CE90: .4byte gUnknown_203B2F4
-_0802CE94:
- movs r0, 0x3
- b _0802CEB4
-_0802CE98:
- ldr r0, [r4]
- movs r1, 0x1
- bl sub_80138B8
- lsls r0, 24
- cmp r0, 0
- bne _0802CEAA
- movs r0, 0
- b _0802CEB4
-_0802CEAA:
- bl sub_802CF5C
- bl sub_802CFD0
- movs r0, 0x1
-_0802CEB4:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_802CE5C
-
- thumb_func_start sub_802CEBC
-sub_802CEBC:
- ldr r0, _0802CED4
- ldr r1, [r0]
- movs r0, 0x1E
- ldrsh r2, [r1, r0]
- movs r3, 0x1C
- ldrsh r0, [r1, r3]
- muls r0, r2
- ldrb r1, [r1, 0x18]
- adds r0, r1
- lsls r0, 24
- lsrs r0, 24
- bx lr
- .align 2, 0
-_0802CED4: .4byte gUnknown_203B2F4
- thumb_func_end sub_802CEBC
-
- thumb_func_start sub_802CED8
-sub_802CED8:
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl ResetUnusedInputStruct
- ldr r5, _0802CF10
- ldr r0, [r5]
- adds r0, 0x3C
- movs r1, 0
- movs r2, 0
- bl sub_800641C
- ldr r0, [r5]
- bl sub_8013984
- bl sub_802CF5C
- bl sub_802CFD0
- cmp r4, 0
- beq _0802CF0A
- ldr r0, [r5]
- bl AddMenuCursorSprite
-_0802CF0A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802CF10: .4byte gUnknown_203B2F4
- thumb_func_end sub_802CED8
-
- thumb_func_start sub_802CF14
-sub_802CF14:
- push {r4,r5,lr}
- ldr r4, _0802CF54
- ldr r2, [r4]
- cmp r2, 0
- beq _0802CF4E
- ldr r0, [r2, 0x34]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x3C
- ldr r0, _0802CF58
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x3C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802CF4E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802CF54: .4byte gUnknown_203B2F4
-_0802CF58: .4byte gUnknown_80DFD8C
- thumb_func_end sub_802CF14
-
- thumb_func_start sub_802CF5C
-sub_802CF5C:
- push {r4,lr}
- ldr r4, _0802CFCC
- ldr r0, [r4]
- ldrh r1, [r0, 0x20]
- adds r0, 0x9C
- movs r2, 0
- strb r1, [r0]
- ldr r0, [r4]
- ldrh r1, [r0, 0x1E]
- adds r0, 0x9D
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0x9E
- movs r1, 0xC
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0x9F
- strb r2, [r0]
- ldr r0, [r4]
- movs r1, 0x1A
- ldrsh r0, [r0, r1]
- movs r1, 0x18
- bl sub_8009614
- adds r0, 0x2
- lsls r0, 16
- ldr r2, [r4]
- ldr r3, [r2, 0x34]
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x4A
- asrs r3, r0, 16
- lsrs r0, 16
- strh r0, [r1]
- ldr r1, [r2, 0x34]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r2, r0
- adds r3, 0x2
- adds r2, 0x4C
- strh r3, [r2]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x3C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802CFCC: .4byte gUnknown_203B2F4
- thumb_func_end sub_802CF5C
-
- thumb_func_start sub_802CFD0
-sub_802CFD0:
- push {r4-r6,lr}
- sub sp, 0x60
- ldr r6, _0802D02C
- ldr r0, [r6]
- ldr r0, [r0, 0x34]
- bl sub_8008C54
- ldr r0, [r6]
- ldr r0, [r0, 0x34]
- bl sub_80073B8
- ldr r0, [r6]
- movs r1, 0x1E
- ldrsh r4, [r0, r1]
- lsls r4, 3
- adds r5, r4, 0
- adds r5, 0xA
- ldr r2, _0802D030
- ldr r3, [r0, 0x34]
- movs r0, 0
- str r0, [sp]
- adds r0, r5, 0
- movs r1, 0
- bl xxx_call_draw_string
- adds r4, 0x4
- ldr r1, [r6]
- adds r0, r1, 0
- adds r0, 0x9E
- ldrb r0, [r0]
- lsls r0, 3
- adds r5, r4, r0
- movs r0, 0x1E
- ldrsh r2, [r1, r0]
- adds r2, 0x1
- movs r0, 0x7
- str r0, [sp]
- ldr r0, [r1, 0x34]
- str r0, [sp, 0x4]
- adds r0, r5, 0
- movs r1, 0
- movs r3, 0x2
- bl sub_8012BC4
- movs r5, 0
- b _0802D076
- .align 2, 0
-_0802D02C: .4byte gUnknown_203B2F4
-_0802D030: .4byte gUnknown_80DFDBC
-_0802D034:
- ldr r0, [r6]
- movs r2, 0x1E
- ldrsh r1, [r0, r2]
- movs r2, 0x1C
- ldrsh r0, [r0, r2]
- muls r0, r1
- adds r0, r5
- lsls r0, 24
- lsrs r0, 24
- bl sub_803B344
- adds r4, r0, 0
- ldr r0, [r6]
- ldr r1, [r0, 0x34]
- str r1, [sp, 0x8]
- adds r1, r5, 0
- bl sub_8013800
- str r0, [sp, 0x50]
- adds r0, r4, 0
- add r1, sp, 0x8
- bl sub_803B35C
- mov r1, sp
- adds r1, 0x4B
- movs r0, 0x1
- strb r0, [r1]
- ldr r0, [r4, 0x14]
- str r0, [sp, 0x54]
- add r0, sp, 0x8
- bl sub_803B6D4
- adds r5, 0x1
-_0802D076:
- ldr r0, [r6]
- movs r1, 0x1A
- ldrsh r0, [r0, r1]
- cmp r5, r0
- blt _0802D034
- ldr r0, _0802D094
- ldr r0, [r0]
- ldr r0, [r0, 0x34]
- bl sub_80073E0
- add sp, 0x60
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0802D094: .4byte gUnknown_203B2F4
- thumb_func_end sub_802CFD0
-
- thumb_func_start sub_802D098
-sub_802D098:
- push {r4-r6,lr}
- adds r4, r0, 0
- ldr r6, _0802D0DC
- movs r0, 0x82
- lsls r0, 2
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r6]
- movs r5, 0
- str r5, [r0, 0x6C]
- str r5, [r0, 0x70]
- str r5, [r0, 0x74]
- str r4, [r0, 0xC]
- strb r5, [r0, 0x8]
- ldr r0, [r6]
- adds r0, 0xA
- bl sub_8099328
- ldr r1, [r6]
- strb r0, [r1, 0x9]
- bl sub_8011C1C
- cmp r0, 0x2
- beq _0802D0CE
- ldr r0, [r6]
- strb r5, [r0, 0x9]
-_0802D0CE:
- movs r0, 0
- bl sub_802D1A0
- movs r0, 0x1
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0802D0DC: .4byte gUnknown_203B2F8
- thumb_func_end sub_802D098
-
- thumb_func_start sub_802D0E0
-sub_802D0E0:
- push {lr}
- ldr r0, _0802D0F8
- ldr r0, [r0]
- ldr r0, [r0]
- cmp r0, 0x10
- bhi _0802D16C
- lsls r0, 2
- ldr r1, _0802D0FC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802D0F8: .4byte gUnknown_203B2F8
-_0802D0FC: .4byte _0802D100
- .align 2, 0
-_0802D100:
- .4byte _0802D170
- .4byte _0802D144
- .4byte _0802D168
- .4byte _0802D16C
- .4byte _0802D16C
- .4byte _0802D16C
- .4byte _0802D16C
- .4byte _0802D16C
- .4byte _0802D16C
- .4byte _0802D162
- .4byte _0802D16C
- .4byte _0802D14A
- .4byte _0802D14A
- .4byte _0802D150
- .4byte _0802D156
- .4byte _0802D15C
- .4byte _0802D15C
-_0802D144:
- bl sub_802D7D0
- b _0802D170
-_0802D14A:
- bl sub_802D8CC
- b _0802D170
-_0802D150:
- bl sub_802D940
- b _0802D170
-_0802D156:
- bl sub_802D9F0
- b _0802D170
-_0802D15C:
- bl sub_802DA60
- b _0802D170
-_0802D162:
- bl sub_802D82C
- b _0802D170
-_0802D168:
- movs r0, 0x3
- b _0802D172
-_0802D16C:
- bl sub_802DA84
-_0802D170:
- movs r0, 0
-_0802D172:
- pop {r1}
- bx r1
- thumb_func_end sub_802D0E0
-
- thumb_func_start sub_802D178
-sub_802D178:
- ldr r0, _0802D180
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- bx lr
- .align 2, 0
-_0802D180: .4byte gUnknown_203B2F8
- thumb_func_end sub_802D178
-
- thumb_func_start sub_802D184
-sub_802D184:
- push {r4,lr}
- ldr r4, _0802D19C
- ldr r0, [r4]
- cmp r0, 0
- beq _0802D196
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802D196:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802D19C: .4byte gUnknown_203B2F8
- thumb_func_end sub_802D184
-
- thumb_func_start sub_802D1A0
-sub_802D1A0:
- push {lr}
- ldr r1, _0802D1B4
- ldr r1, [r1]
- str r0, [r1]
- bl sub_802D1B8
- bl sub_802D2A8
- pop {r0}
- bx r0
- .align 2, 0
-_0802D1B4: .4byte gUnknown_203B2F8
- thumb_func_end sub_802D1A0
-
- thumb_func_start sub_802D1B8
-sub_802D1B8:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r4, _0802D1E0
- ldr r0, [r4]
- movs r1, 0xD4
- lsls r1, 1
- adds r0, r1
- bl sub_8006518
- ldr r0, [r4]
- ldr r0, [r0]
- cmp r0, 0xD
- beq _0802D1EA
- cmp r0, 0xD
- bgt _0802D1E4
- cmp r0, 0x2
- beq _0802D27E
- b _0802D254
- .align 2, 0
-_0802D1E0: .4byte gUnknown_203B2F8
-_0802D1E4:
- cmp r0, 0xE
- beq _0802D21C
- b _0802D254
-_0802D1EA:
- bl sub_802D5A4
- ldr r2, [r4]
- movs r0, 0xEC
- lsls r0, 1
- adds r2, r0
- ldr r1, _0802D218
- ldm r1!, {r3,r5,r6}
- stm r2!, {r3,r5,r6}
- ldm r1!, {r3,r5,r7}
- stm r2!, {r3,r5,r7}
- ldr r1, [r4]
- adds r0, r1, r0
- movs r6, 0x8C
- lsls r6, 1
- adds r1, r6
- bl sub_8012CAC
- ldr r0, [r4]
- movs r7, 0xF2
- lsls r7, 1
- b _0802D246
- .align 2, 0
-_0802D218: .4byte gUnknown_80DFE04
-_0802D21C:
- bl sub_802D63C
- ldr r2, [r4]
- movs r0, 0xF8
- lsls r0, 1
- adds r2, r0
- ldr r1, _0802D250
- ldm r1!, {r3,r5,r6}
- stm r2!, {r3,r5,r6}
- ldm r1!, {r3,r5,r7}
- stm r2!, {r3,r5,r7}
- ldr r1, [r4]
- adds r0, r1, r0
- movs r6, 0xAC
- lsls r6, 1
- adds r1, r6
- bl sub_8012CAC
- ldr r0, [r4]
- movs r7, 0xFE
- lsls r7, 1
-_0802D246:
- adds r0, r7
- movs r1, 0x6
- strh r1, [r0]
- b _0802D27E
- .align 2, 0
-_0802D250: .4byte gUnknown_80DFE1C
-_0802D254:
- ldr r0, _0802D2A0
- mov r12, r0
- movs r1, 0xD4
- lsls r1, 1
- mov r8, r1
- ldr r4, _0802D2A4
- movs r3, 0
- movs r2, 0x3
-_0802D264:
- mov r5, r12
- ldr r1, [r5]
- adds r1, r3
- add r1, r8
- adds r0, r4, 0
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- adds r3, 0x18
- subs r2, 0x1
- cmp r2, 0
- bge _0802D264
-_0802D27E:
- bl ResetUnusedInputStruct
- ldr r0, _0802D2A0
- ldr r0, [r0]
- movs r6, 0xD4
- lsls r6, 1
- adds r0, r6
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802D2A0: .4byte gUnknown_203B2F8
-_0802D2A4: .4byte gUnknown_80DFDD4
- thumb_func_end sub_802D1B8
-
- thumb_func_start sub_802D2A8
-sub_802D2A8:
- push {r4,lr}
- sub sp, 0x14
- ldr r1, _0802D2C4
- ldr r0, [r1]
- ldr r0, [r0]
- adds r4, r1, 0
- cmp r0, 0x10
- bls _0802D2BA
- b _0802D59A
-_0802D2BA:
- lsls r0, 2
- ldr r1, _0802D2C8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802D2C4: .4byte gUnknown_203B2F8
-_0802D2C8: .4byte _0802D2CC
- .align 2, 0
-_0802D2CC:
- .4byte _0802D310
- .4byte _0802D398
- .4byte _0802D59A
- .4byte _0802D3B4
- .4byte _0802D3C4
- .4byte _0802D3D4
- .4byte _0802D3E4
- .4byte _0802D3F4
- .4byte _0802D404
- .4byte _0802D498
- .4byte _0802D4C8
- .4byte _0802D4E4
- .4byte _0802D4F0
- .4byte _0802D4F8
- .4byte _0802D524
- .4byte _0802D558
- .4byte _0802D576
-_0802D310:
- ldr r0, [r4]
- ldr r0, [r0, 0xC]
- bl sub_80968B0
- lsls r0, 24
- cmp r0, 0
- beq _0802D326
- movs r0, 0x3
- bl sub_802D1A0
- b _0802D59A
-_0802D326:
- ldr r0, [r4]
- ldr r0, [r0, 0xC]
- bl sub_8096F50
- lsls r0, 24
- cmp r0, 0
- beq _0802D33C
- movs r0, 0x4
- bl sub_802D1A0
- b _0802D59A
-_0802D33C:
- ldr r1, [r4]
- ldr r0, [r1, 0xC]
- ldrb r0, [r0, 0x2]
- cmp r0, 0x4
- bne _0802D36E
- adds r0, r1, 0
- adds r0, 0x10
- bl sub_8096C08
- lsls r0, 24
- cmp r0, 0
- beq _0802D36E
- bl sub_802DAA8
- lsls r0, 24
- cmp r0, 0
- beq _0802D366
- movs r0, 0x9
- bl sub_802D1A0
- b _0802D59A
-_0802D366:
- movs r0, 0x5
- bl sub_802D1A0
- b _0802D59A
-_0802D36E:
- bl sub_80969AC
- cmp r0, 0x7
- ble _0802D390
- bl sub_802DADC
- lsls r0, 24
- cmp r0, 0
- beq _0802D388
- movs r0, 0xA
- bl sub_802D1A0
- b _0802D59A
-_0802D388:
- movs r0, 0x6
- bl sub_802D1A0
- b _0802D59A
-_0802D390:
- movs r0, 0x8
- bl sub_802D1A0
- b _0802D59A
-_0802D398:
- bl sub_802D73C
- ldr r0, _0802D3AC
- ldr r1, _0802D3B0
- ldr r3, [r1]
- ldr r2, [r3, 0x70]
- movs r1, 0xAC
- lsls r1, 1
- adds r3, r1
- b _0802D4AA
- .align 2, 0
-_0802D3AC: .4byte gUnknown_80DFE4C
-_0802D3B0: .4byte gUnknown_203B2F8
-_0802D3B4:
- ldr r1, [r4]
- movs r0, 0x2
- str r0, [r1, 0x4]
- ldr r0, _0802D3C0
- b _0802D4D0
- .align 2, 0
-_0802D3C0: .4byte gUnknown_80DFE9C
-_0802D3C4:
- ldr r1, [r4]
- movs r0, 0x2
- str r0, [r1, 0x4]
- ldr r0, _0802D3D0
- b _0802D4D0
- .align 2, 0
-_0802D3D0: .4byte gUnknown_80DFED0
-_0802D3D4:
- ldr r1, [r4]
- movs r0, 0x2
- str r0, [r1, 0x4]
- ldr r0, _0802D3E0
- b _0802D4D0
- .align 2, 0
-_0802D3E0: .4byte gUnknown_80DFF2C
-_0802D3E4:
- ldr r1, [r4]
- movs r0, 0x2
- str r0, [r1, 0x4]
- ldr r0, _0802D3F0
- b _0802D4D0
- .align 2, 0
-_0802D3F0: .4byte gUnknown_80DFFA4
-_0802D3F4:
- ldr r1, [r4]
- movs r0, 0xC
- str r0, [r1, 0x4]
- ldr r0, _0802D400
- b _0802D4D0
- .align 2, 0
-_0802D400: .4byte gUnknown_80E0010
-_0802D404:
- ldr r4, _0802D45C
- ldr r1, [r4]
- movs r0, 0x1
- strb r0, [r1, 0x8]
- ldr r0, [r4]
- ldr r0, [r0, 0xC]
- bl sub_8096A78
- bl sub_8096C80
- bl sub_8096D24
- ldr r0, [r4]
- ldr r0, [r0, 0xC]
- ldrb r0, [r0, 0x2]
- cmp r0, 0x4
- bne _0802D446
- bl sub_8096DD8
- ldr r1, [r4]
- ldr r1, [r1, 0xC]
- ldr r1, [r1, 0x14]
- movs r2, 0x28
- bl MemoryCopy8
- bl sub_8096DE8
- ldr r1, [r4]
- ldr r1, [r1, 0xC]
- ldr r1, [r1, 0x18]
- movs r2, 0x78
- bl MemoryCopy8
-_0802D446:
- ldr r0, [r4]
- ldr r0, [r0, 0xC]
- ldrb r0, [r0, 0x4]
- cmp r0, 0x2C
- beq _0802D46E
- cmp r0, 0x2C
- bgt _0802D460
- cmp r0, 0x2B
- beq _0802D46A
- b _0802D484
- .align 2, 0
-_0802D45C: .4byte gUnknown_203B2F8
-_0802D460:
- cmp r0, 0x2D
- beq _0802D472
- cmp r0, 0x2E
- beq _0802D47C
- b _0802D484
-_0802D46A:
- movs r0, 0x2A
- b _0802D474
-_0802D46E:
- movs r0, 0x2B
- b _0802D474
-_0802D472:
- movs r0, 0x2C
-_0802D474:
- movs r1, 0x1
- bl sub_8097418
- b _0802D484
-_0802D47C:
- movs r0, 0x2D
- movs r1, 0x1
- bl sub_8097418
-_0802D484:
- ldr r0, _0802D490
- ldr r1, [r0]
- movs r0, 0x2
- str r0, [r1, 0x4]
- ldr r0, _0802D494
- b _0802D4D0
- .align 2, 0
-_0802D490: .4byte gUnknown_203B2F8
-_0802D494: .4byte gUnknown_80E0074
-_0802D498:
- bl sub_802D690
- ldr r0, _0802D4C0
- ldr r1, _0802D4C4
- ldr r3, [r1]
- ldr r2, [r3, 0x74]
- movs r4, 0xAC
- lsls r4, 1
- adds r3, r4
-_0802D4AA:
- movs r4, 0
- str r4, [sp]
- movs r1, 0x4
- str r1, [sp, 0x4]
- str r4, [sp, 0x8]
- str r4, [sp, 0xC]
- str r4, [sp, 0x10]
- movs r1, 0
- bl sub_8014248
- b _0802D59A
- .align 2, 0
-_0802D4C0: .4byte gUnknown_80E0094
-_0802D4C4: .4byte gUnknown_203B2F8
-_0802D4C8:
- ldr r1, [r4]
- movs r0, 0xB
- str r0, [r1, 0x4]
- ldr r0, _0802D4DC
-_0802D4D0:
- ldr r3, _0802D4E0
- movs r1, 0
- movs r2, 0
- bl sub_80141B4
- b _0802D59A
- .align 2, 0
-_0802D4DC: .4byte gUnknown_80E0108
-_0802D4E0: .4byte 0x00000101
-_0802D4E4:
- movs r0, 0
- movs r1, 0
- movs r2, 0x4
- bl sub_802C4C8
- b _0802D59A
-_0802D4F0:
- movs r0, 0x1
- bl sub_802C640
- b _0802D59A
-_0802D4F8:
- bl sub_802C750
- ldr r0, _0802D520
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x78
- movs r3, 0x8C
- lsls r3, 1
- adds r1, r2, r3
- movs r4, 0xCC
- lsls r4, 1
- adds r3, r2, r4
- ldr r2, [r2, 0x6C]
- str r2, [sp]
- movs r2, 0x2
- str r2, [sp, 0x4]
- movs r2, 0
- bl sub_8012D60
- b _0802D59A
- .align 2, 0
-_0802D520: .4byte gUnknown_203B2F8
-_0802D524:
- bl sub_802C750
- ldr r4, _0802D554
- ldr r0, [r4]
- adds r0, 0x78
- movs r1, 0
- bl sub_8012EA4
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0xC8
- movs r2, 0xAC
- lsls r2, 1
- adds r1, r2
- movs r2, 0x4
- str r2, [sp]
- movs r2, 0x3
- str r2, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_8012D60
- b _0802D59A
- .align 2, 0
-_0802D554: .4byte gUnknown_203B2F8
-_0802D558:
- ldr r0, [r4]
- ldrb r0, [r0, 0x10]
- bl sub_8096AB4
- ldr r1, [r4]
- adds r1, 0x14
- bl sub_803B35C
- ldr r0, [r4]
- movs r1, 0x3
- str r1, [r0, 0x14]
- adds r0, 0x14
- bl sub_802DE84
- b _0802D59A
-_0802D576:
- ldr r1, [r4]
- ldr r0, [r1, 0xC]
- adds r1, 0x14
- bl sub_803B35C
- ldr r0, [r4]
- movs r1, 0x3
- str r1, [r0, 0x14]
- adds r0, 0x58
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r4]
- ldr r1, [r0, 0xC]
- ldr r1, [r1, 0x18]
- str r1, [r0, 0x64]
- adds r0, 0x14
- bl sub_802DE84
-_0802D59A:
- add sp, 0x14
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802D2A8
-
- thumb_func_start sub_802D5A4
-sub_802D5A4:
- push {r4-r7,lr}
- ldr r4, _0802D630
- ldr r0, [r4]
- movs r5, 0xCC
- lsls r5, 1
- adds r0, r5
- movs r1, 0
- movs r2, 0x10
- bl MemoryFill16
- ldr r0, [r4]
- mov r12, r0
- movs r3, 0
- movs r1, 0x8C
- lsls r1, 1
- add r1, r12
- ldr r0, _0802D634
- ldr r0, [r0]
- str r0, [r1]
- movs r1, 0x8E
- lsls r1, 1
- add r1, r12
- movs r0, 0x2
- str r0, [r1]
- movs r2, 0x1
- movs r1, 0x90
- lsls r1, 1
- add r1, r12
- ldr r0, _0802D638
- ldr r0, [r0]
- str r0, [r1]
- movs r1, 0x92
- lsls r1, 1
- add r1, r12
- movs r0, 0x5
- str r0, [r1]
- movs r7, 0x2
- movs r0, 0x94
- lsls r0, 1
- add r0, r12
- str r3, [r0]
- movs r0, 0x96
- lsls r0, 1
- add r0, r12
- str r2, [r0]
- movs r6, 0
- movs r3, 0x8E
- lsls r3, 1
- add r3, r12
- mov r0, r12
- adds r2, r0, r5
-_0802D60A:
- ldrh r0, [r2]
- cmp r0, 0
- bne _0802D61A
- ldr r1, [r3]
- mov r5, r12
- ldr r0, [r5, 0x6C]
- cmp r1, r0
- beq _0802D62A
-_0802D61A:
- adds r3, 0x8
- adds r2, 0x2
- adds r6, 0x1
- cmp r6, r7
- blt _0802D60A
- ldr r1, [r4]
- movs r0, 0x2
- str r0, [r1, 0x6C]
-_0802D62A:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802D630: .4byte gUnknown_203B2F8
-_0802D634: .4byte gUnknown_80D494C
-_0802D638: .4byte gUnknown_80D4970
- thumb_func_end sub_802D5A4
-
- thumb_func_start sub_802D63C
-sub_802D63C:
- ldr r0, _0802D684
- ldr r0, [r0]
- mov r12, r0
- movs r3, 0
- movs r1, 0xAC
- lsls r1, 1
- add r1, r12
- ldr r0, _0802D688
- ldr r0, [r0]
- str r0, [r1]
- movs r1, 0xAE
- lsls r1, 1
- add r1, r12
- movs r0, 0x3
- str r0, [r1]
- movs r2, 0x1
- movs r1, 0xB0
- lsls r1, 1
- add r1, r12
- ldr r0, _0802D68C
- ldr r0, [r0]
- str r0, [r1]
- movs r1, 0xB2
- lsls r1, 1
- add r1, r12
- movs r0, 0x4
- str r0, [r1]
- movs r0, 0xB4
- lsls r0, 1
- add r0, r12
- str r3, [r0]
- movs r0, 0xB6
- lsls r0, 1
- add r0, r12
- str r2, [r0]
- bx lr
- .align 2, 0
-_0802D684: .4byte gUnknown_203B2F8
-_0802D688: .4byte gUnknown_80D4920
-_0802D68C: .4byte gUnknown_80D4928
- thumb_func_end sub_802D63C
-
- thumb_func_start sub_802D690
-sub_802D690:
- push {r4,r5,lr}
- ldr r2, _0802D728
- ldr r0, [r2]
- mov r12, r0
- movs r4, 0
- movs r1, 0xAC
- lsls r1, 1
- add r1, r12
- ldr r0, _0802D72C
- ldr r0, [r0]
- str r0, [r1]
- movs r1, 0xAE
- lsls r1, 1
- add r1, r12
- movs r0, 0x3
- str r0, [r1]
- movs r3, 0x1
- movs r1, 0xB0
- lsls r1, 1
- add r1, r12
- ldr r0, _0802D730
- ldr r0, [r0]
- str r0, [r1]
- movs r1, 0xB2
- lsls r1, 1
- add r1, r12
- movs r0, 0x4
- str r0, [r1]
- movs r1, 0xB4
- lsls r1, 1
- add r1, r12
- ldr r0, _0802D734
- str r0, [r1]
- movs r1, 0xB6
- lsls r1, 1
- add r1, r12
- movs r0, 0x6
- str r0, [r1]
- movs r1, 0xB8
- lsls r1, 1
- add r1, r12
- ldr r0, _0802D738
- str r0, [r1]
- movs r1, 0xBA
- lsls r1, 1
- add r1, r12
- movs r0, 0x7
- str r0, [r1]
- movs r5, 0x4
- movs r0, 0xBC
- lsls r0, 1
- add r0, r12
- str r4, [r0]
- movs r0, 0xBE
- lsls r0, 1
- add r0, r12
- str r3, [r0]
- movs r3, 0
- mov r0, r12
- ldr r4, [r0, 0x74]
- movs r1, 0xAE
- lsls r1, 1
- add r1, r12
-_0802D70E:
- ldr r0, [r1]
- cmp r0, r4
- beq _0802D722
- adds r1, 0x8
- adds r3, 0x1
- cmp r3, r5
- blt _0802D70E
- ldr r1, [r2]
- movs r0, 0x4
- str r0, [r1, 0x74]
-_0802D722:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802D728: .4byte gUnknown_203B2F8
-_0802D72C: .4byte gUnknown_80D4920
-_0802D730: .4byte gUnknown_80D4928
-_0802D734: .4byte gUnknown_80E014C
-_0802D738: .4byte gUnknown_80E0158
- thumb_func_end sub_802D690
-
- thumb_func_start sub_802D73C
-sub_802D73C:
- push {r4,r5,lr}
- ldr r3, _0802D7C0
- ldr r0, [r3]
- mov r12, r0
- movs r4, 0
- movs r1, 0xAC
- lsls r1, 1
- add r1, r12
- ldr r0, _0802D7C4
- ldr r0, [r0]
- str r0, [r1]
- movs r1, 0xAE
- lsls r1, 1
- add r1, r12
- movs r0, 0x3
- str r0, [r1]
- movs r2, 0x1
- movs r1, 0xB0
- lsls r1, 1
- add r1, r12
- ldr r0, _0802D7C8
- ldr r0, [r0]
- str r0, [r1]
- movs r1, 0xB2
- lsls r1, 1
- add r1, r12
- movs r0, 0x4
- str r0, [r1]
- movs r1, 0xB4
- lsls r1, 1
- add r1, r12
- ldr r0, _0802D7CC
- str r0, [r1]
- movs r1, 0xB6
- lsls r1, 1
- add r1, r12
- movs r0, 0x6
- str r0, [r1]
- movs r5, 0x3
- movs r0, 0xB8
- lsls r0, 1
- add r0, r12
- str r4, [r0]
- movs r0, 0xBA
- lsls r0, 1
- add r0, r12
- str r2, [r0]
- movs r2, 0
- mov r0, r12
- ldr r4, [r0, 0x70]
- movs r1, 0xAE
- lsls r1, 1
- add r1, r12
-_0802D7A6:
- ldr r0, [r1]
- cmp r0, r4
- beq _0802D7BA
- adds r1, 0x8
- adds r2, 0x1
- cmp r2, r5
- blt _0802D7A6
- ldr r1, [r3]
- movs r0, 0x4
- str r0, [r1, 0x70]
-_0802D7BA:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802D7C0: .4byte gUnknown_203B2F8
-_0802D7C4: .4byte gUnknown_80D4920
-_0802D7C8: .4byte gUnknown_80D4928
-_0802D7CC: .4byte gUnknown_80E014C
- thumb_func_end sub_802D73C
-
- thumb_func_start sub_802D7D0
-sub_802D7D0:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802D826
- ldr r1, [sp]
- cmp r1, 0x1
- beq _0802D7EA
- ldr r0, _0802D800
- ldr r0, [r0]
- str r1, [r0, 0x70]
-_0802D7EA:
- ldr r0, [sp]
- cmp r0, 0x3
- beq _0802D804
- cmp r0, 0x3
- ble _0802D820
- cmp r0, 0x4
- beq _0802D820
- cmp r0, 0x6
- beq _0802D80C
- b _0802D820
- .align 2, 0
-_0802D800: .4byte gUnknown_203B2F8
-_0802D804:
- movs r0, 0x2
- bl sub_802D1A0
- b _0802D826
-_0802D80C:
- ldr r0, _0802D81C
- ldr r1, [r0]
- movs r0, 0x1
- str r0, [r1, 0x4]
- movs r0, 0x10
- bl sub_802D1A0
- b _0802D826
- .align 2, 0
-_0802D81C: .4byte gUnknown_203B2F8
-_0802D820:
- movs r0, 0
- bl sub_802D1A0
-_0802D826:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802D7D0
-
- thumb_func_start sub_802D82C
-sub_802D82C:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802D8C6
- ldr r1, [sp]
- cmp r1, 0x1
- beq _0802D846
- ldr r0, _0802D858
- ldr r0, [r0]
- str r1, [r0, 0x74]
-_0802D846:
- ldr r0, [sp]
- subs r0, 0x1
- cmp r0, 0x6
- bhi _0802D8C0
- lsls r0, 2
- ldr r1, _0802D85C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802D858: .4byte gUnknown_203B2F8
-_0802D85C: .4byte _0802D860
- .align 2, 0
-_0802D860:
- .4byte _0802D8C0
- .4byte _0802D8C0
- .4byte _0802D87C
- .4byte _0802D8C0
- .4byte _0802D8C0
- .4byte _0802D898
- .4byte _0802D8AC
-_0802D87C:
- ldr r0, _0802D894
- ldr r0, [r0]
- ldrb r0, [r0, 0x10]
- bl sub_8096C3C
- bl sub_8096C80
- movs r0, 0x8
- bl sub_802D1A0
- b _0802D8C6
- .align 2, 0
-_0802D894: .4byte gUnknown_203B2F8
-_0802D898:
- ldr r0, _0802D8A8
- ldr r1, [r0]
- movs r0, 0x9
- str r0, [r1, 0x4]
- movs r0, 0x10
- bl sub_802D1A0
- b _0802D8C6
- .align 2, 0
-_0802D8A8: .4byte gUnknown_203B2F8
-_0802D8AC:
- ldr r0, _0802D8BC
- ldr r1, [r0]
- movs r0, 0x9
- str r0, [r1, 0x4]
- movs r0, 0xF
- bl sub_802D1A0
- b _0802D8C6
- .align 2, 0
-_0802D8BC: .4byte gUnknown_203B2F8
-_0802D8C0:
- movs r0, 0x1
- bl sub_802D1A0
-_0802D8C6:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_802D82C
-
- thumb_func_start sub_802D8CC
-sub_802D8CC:
- push {lr}
- movs r0, 0x1
- bl sub_802C598
- cmp r0, 0x4
- bhi _0802D93A
- lsls r0, 2
- ldr r1, _0802D8E4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802D8E4: .4byte _0802D8E8
- .align 2, 0
-_0802D8E8:
- .4byte _0802D93A
- .4byte _0802D93A
- .4byte _0802D930
- .4byte _0802D8FC
- .4byte _0802D914
-_0802D8FC:
- bl sub_802C620
- ldr r1, _0802D910
- ldr r1, [r1]
- strb r0, [r1, 0x10]
- movs r0, 0xD
- bl sub_802D1A0
- b _0802D93A
- .align 2, 0
-_0802D910: .4byte gUnknown_203B2F8
-_0802D914:
- bl sub_802C620
- ldr r2, _0802D92C
- ldr r1, [r2]
- strb r0, [r1, 0x10]
- ldr r1, [r2]
- movs r0, 0xC
- str r0, [r1, 0x4]
- movs r0, 0xF
- bl sub_802D1A0
- b _0802D93A
- .align 2, 0
-_0802D92C: .4byte gUnknown_203B2F8
-_0802D930:
- bl sub_802C688
- movs r0, 0x1
- bl sub_802D1A0
-_0802D93A:
- pop {r0}
- bx r0
- thumb_func_end sub_802D8CC
-
- thumb_func_start sub_802D940
-sub_802D940:
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- bl sub_802C598
- ldr r4, _0802D980
- ldr r0, [r4]
- adds r0, 0x78
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _0802D970
- ldr r0, [r4]
- adds r0, 0x78
- mov r1, sp
- bl sub_8013114
- ldr r1, [sp]
- cmp r1, 0x1
- beq _0802D970
- ldr r0, [r4]
- str r1, [r0, 0x6C]
-_0802D970:
- ldr r0, [sp]
- cmp r0, 0x2
- beq _0802D98A
- cmp r0, 0x2
- bgt _0802D984
- cmp r0, 0x1
- beq _0802D9E0
- b _0802D9E6
- .align 2, 0
-_0802D980: .4byte gUnknown_203B2F8
-_0802D984:
- cmp r0, 0x5
- beq _0802D9CC
- b _0802D9E6
-_0802D98A:
- ldr r0, _0802D9BC
- ldr r3, [r0]
- ldrb r0, [r3, 0x9]
- cmp r0, 0
- beq _0802D9C4
- ldr r2, _0802D9C0
- ldrb r1, [r3, 0x10]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r0, 0xF0
- ldr r1, [r2]
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0x5
- bls _0802D9C4
- ldrb r0, [r3, 0xA]
- ldrb r1, [r1, 0x4]
- cmp r0, r1
- bne _0802D9C4
- movs r0, 0x7
- bl sub_802D1A0
- b _0802D9E6
- .align 2, 0
-_0802D9BC: .4byte gUnknown_203B2F8
-_0802D9C0: .4byte gUnknown_203B490
-_0802D9C4:
- movs r0, 0xE
- bl sub_802D1A0
- b _0802D9E6
-_0802D9CC:
- ldr r0, _0802D9DC
- ldr r1, [r0]
- movs r0, 0xC
- str r0, [r1, 0x4]
- movs r0, 0xF
- bl sub_802D1A0
- b _0802D9E6
- .align 2, 0
-_0802D9DC: .4byte gUnknown_203B2F8
-_0802D9E0:
- movs r0, 0xC
- bl sub_802D1A0
-_0802D9E6:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802D940
-
- thumb_func_start sub_802D9F0
-sub_802D9F0:
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- bl sub_802C598
- ldr r4, _0802DA30
- ldr r0, [r4]
- adds r0, 0x78
- bl sub_8012FD8
- ldr r0, [r4]
- adds r0, 0xC8
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _0802DA1E
- ldr r0, [r4]
- adds r0, 0xC8
- mov r1, sp
- bl sub_8013114
-_0802DA1E:
- ldr r0, [sp]
- cmp r0, 0x3
- beq _0802DA40
- cmp r0, 0x3
- bgt _0802DA34
- cmp r0, 0x1
- beq _0802DA38
- b _0802DA56
- .align 2, 0
-_0802DA30: .4byte gUnknown_203B2F8
-_0802DA34:
- cmp r0, 0x4
- bne _0802DA56
-_0802DA38:
- movs r0, 0xC
- bl sub_802D1A0
- b _0802DA56
-_0802DA40:
- bl sub_802C688
- ldr r0, [r4]
- ldrb r0, [r0, 0x10]
- bl sub_8096C3C
- bl sub_8096C80
- movs r0, 0x8
- bl sub_802D1A0
-_0802DA56:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802D9F0
-
- thumb_func_start sub_802DA60
-sub_802DA60:
- push {lr}
- bl sub_802DEE0
- cmp r0, 0x1
- bls _0802DA7C
- cmp r0, 0x3
- bhi _0802DA7C
- bl sub_802DF24
- ldr r0, _0802DA80
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- bl sub_802D1A0
-_0802DA7C:
- pop {r0}
- bx r0
- .align 2, 0
-_0802DA80: .4byte gUnknown_203B2F8
- thumb_func_end sub_802DA60
-
- thumb_func_start sub_802DA84
-sub_802DA84:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802DA9C
- ldr r0, _0802DAA4
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- bl sub_802D1A0
-_0802DA9C:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0802DAA4: .4byte gUnknown_203B2F8
- thumb_func_end sub_802DA84
-
- thumb_func_start sub_802DAA8
-sub_802DAA8:
- push {r4,lr}
- ldr r4, _0802DAD0
- ldr r0, [r4]
- ldrb r0, [r0, 0x10]
- bl sub_8096AB4
- adds r1, r0, 0
- ldr r4, [r4]
- ldrb r0, [r4, 0x9]
- cmp r0, 0
- beq _0802DAD4
- ldrb r0, [r1]
- cmp r0, 0x5
- beq _0802DAD4
- ldrb r0, [r4, 0xA]
- ldrb r1, [r1, 0x4]
- cmp r0, r1
- bne _0802DAD4
- movs r0, 0
- b _0802DAD6
- .align 2, 0
-_0802DAD0: .4byte gUnknown_203B2F8
-_0802DAD4:
- movs r0, 0x1
-_0802DAD6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_802DAA8
-
- thumb_func_start sub_802DADC
-sub_802DADC:
- push {r4,lr}
- ldr r3, _0802DAEC
- ldr r0, [r3]
- ldrb r0, [r0, 0x9]
- cmp r0, 0
- bne _0802DAF0
-_0802DAE8:
- movs r0, 0x1
- b _0802DB1C
- .align 2, 0
-_0802DAEC: .4byte gUnknown_203B2F8
-_0802DAF0:
- ldr r0, _0802DB24
- ldr r0, [r0]
- adds r1, r0, 0
- adds r1, 0xF0
- movs r2, 0
-_0802DAFA:
- ldrb r0, [r1]
- cmp r0, 0
- beq _0802DAE8
- cmp r0, 0x5
- beq _0802DAE8
- cmp r0, 0x5
- bls _0802DB12
- ldr r0, [r3]
- ldrb r0, [r0, 0xA]
- ldrb r4, [r1, 0x4]
- cmp r0, r4
- bne _0802DAE8
-_0802DB12:
- adds r1, 0x14
- adds r2, 0x1
- cmp r2, 0x7
- ble _0802DAFA
- movs r0, 0
-_0802DB1C:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0802DB24: .4byte gUnknown_203B490
- thumb_func_end sub_802DADC
-
- thumb_func_start sub_802DB28
-sub_802DB28:
- push {r4-r6,lr}
- sub sp, 0x8
- adds r2, r1, 0
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r2, 24
- lsrs r2, 24
- mov r0, sp
- adds r1, r6, 0
- bl sub_8096AF8
- mov r0, sp
- ldrb r0, [r0]
- cmp r0, 0
- bne _0802DB4A
- movs r0, 0
- b _0802DBC6
-_0802DB4A:
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r4, _0802DBD0
- movs r0, 0xA8
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
- adds r0, 0x30
- movs r5, 0
- strb r6, [r0]
- adds r0, r6, 0
- bl sub_8096AB4
- ldr r1, [r4]
- str r0, [r1, 0x34]
- bl sub_8096EEC
- ldr r1, [r4]
- ldr r0, [r1, 0x34]
- adds r1, 0x8
- bl sub_803C21C
- ldr r0, [r4]
- ldr r0, [r0, 0x34]
- movs r1, 0xC
- ldrsh r0, [r0, r1]
- bl GetDialogueSpriteDataPtr
- ldr r1, [r4]
- str r0, [r1, 0x38]
- str r5, [r1, 0x3C]
- adds r1, 0x44
- strb r5, [r1]
- ldr r0, [r4]
- adds r0, 0x45
- strb r5, [r0]
- ldr r0, [r4]
- adds r0, 0x46
- strb r5, [r0]
- ldr r2, [r4]
- adds r1, r2, 0
- adds r1, 0x40
- movs r0, 0x2
- strh r0, [r1]
- adds r1, 0x2
- movs r0, 0x8
- strh r0, [r1]
- ldr r0, [r2, 0x38]
- cmp r0, 0
- beq _0802DBBE
- ldr r0, [r0, 0x4]
- str r0, [r2, 0x3C]
-_0802DBBE:
- movs r0, 0
- bl sub_802DC28
- movs r0, 0x1
-_0802DBC6:
- add sp, 0x8
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0802DBD0: .4byte gUnknown_203B2FC
- thumb_func_end sub_802DB28
-
- thumb_func_start sub_802DBD4
-sub_802DBD4:
- push {lr}
- ldr r0, _0802DBEC
- ldr r0, [r0]
- ldr r1, [r0]
- cmp r1, 0x6
- beq _0802DBF0
- cmp r1, 0x7
- bne _0802DBF6
- ldr r0, [r0, 0x34]
- strb r1, [r0]
- movs r0, 0x3
- b _0802DBFC
- .align 2, 0
-_0802DBEC: .4byte gUnknown_203B2FC
-_0802DBF0:
- bl sub_802DE44
- b _0802DBFA
-_0802DBF6:
- bl sub_802DE60
-_0802DBFA:
- movs r0, 0
-_0802DBFC:
- pop {r1}
- bx r1
- thumb_func_end sub_802DBD4
-
- thumb_func_start sub_802DC00
-sub_802DC00:
- push {r4,lr}
- ldr r4, _0802DC24
- ldr r0, [r4]
- cmp r0, 0
- beq _0802DC1E
- ldr r0, [r0, 0x38]
- cmp r0, 0
- beq _0802DC14
- bl CloseFile
-_0802DC14:
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802DC1E:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802DC24: .4byte gUnknown_203B2FC
- thumb_func_end sub_802DC00
-
- thumb_func_start sub_802DC28
-sub_802DC28:
- push {lr}
- ldr r1, _0802DC3C
- ldr r1, [r1]
- str r0, [r1]
- bl sub_802DC40
- bl sub_802DC9C
- pop {r0}
- bx r0
- .align 2, 0
-_0802DC3C: .4byte gUnknown_203B2FC
- thumb_func_end sub_802DC28
-
- thumb_func_start sub_802DC40
-sub_802DC40:
- push {r4-r7,lr}
- ldr r4, _0802DC94
- ldr r0, [r4]
- adds r0, 0x48
- bl sub_8006518
- ldr r0, [r4]
- ldr r0, [r0]
- cmp r0, 0
- beq _0802DC58
- cmp r0, 0x7
- bne _0802DC7A
-_0802DC58:
- mov r12, r4
- ldr r4, _0802DC98
- movs r3, 0
- movs r2, 0x3
-_0802DC60:
- mov r0, r12
- ldr r1, [r0]
- adds r1, r3
- adds r1, 0x48
- adds r0, r4, 0
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- adds r3, 0x18
- subs r2, 0x1
- cmp r2, 0
- bge _0802DC60
-_0802DC7A:
- bl ResetUnusedInputStruct
- ldr r0, _0802DC94
- ldr r0, [r0]
- adds r0, 0x48
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802DC94: .4byte gUnknown_203B2FC
-_0802DC98: .4byte gUnknown_80E016C
- thumb_func_end sub_802DC40
-
- thumb_func_start sub_802DC9C
-sub_802DC9C:
- push {r4,r5,lr}
- ldr r1, _0802DCB8
- ldr r0, [r1]
- ldr r0, [r0]
- adds r5, r1, 0
- cmp r0, 0x7
- bls _0802DCAC
- b _0802DE3E
-_0802DCAC:
- lsls r0, 2
- ldr r1, _0802DCBC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802DCB8: .4byte gUnknown_203B2FC
-_0802DCBC: .4byte _0802DCC0
- .align 2, 0
-_0802DCC0:
- .4byte _0802DCE0
- .4byte _0802DDDC
- .4byte _0802DDE4
- .4byte _0802DDEC
- .4byte _0802DDFC
- .4byte _0802DDF4
- .4byte _0802DE34
- .4byte _0802DE3E
-_0802DCE0:
- ldr r0, _0802DD60
- ldr r1, [r5]
- ldr r1, [r1, 0x34]
- movs r2, 0xC
- ldrsh r1, [r1, r2]
- bl sub_808D8E0
- ldr r4, _0802DD64
- ldr r0, [r5]
- ldr r0, [r0, 0x34]
- movs r2, 0xC
- ldrsh r1, [r0, r2]
- adds r0, r4, 0
- bl sub_808D8E0
- ldr r0, [r5]
- ldr r0, [r0, 0x34]
- movs r1, 0xC
- ldrsh r0, [r0, r1]
- bl GetMonSpecies
- adds r1, r0, 0
- ldr r2, _0802DD68
- adds r0, r4, r2
- bl strcpy
- ldr r0, [r5]
- ldr r0, [r0, 0x34]
- movs r1, 0xE
- ldrsh r0, [r0, r1]
- bl GetMonSpecies
- adds r1, r0, 0
- ldr r2, _0802DD6C
- adds r4, r2
- adds r0, r4, 0
- bl strcpy
- ldr r0, [r5]
- ldr r0, [r0, 0x34]
- movs r1, 0xC
- ldrsh r0, [r0, r1]
- bl sub_8098214
- ldr r0, _0802DD70
- ldr r1, [r5]
- ldr r1, [r1, 0x34]
- ldrb r1, [r1, 0x10]
- movs r2, 0
- bl sub_8090DC4
- ldr r1, [r5]
- movs r0, 0x6
- str r0, [r1, 0x4]
- ldr r0, [r1, 0x34]
- ldrb r0, [r0, 0x1]
- cmp r0, 0x4
- bhi _0802DDD4
- lsls r0, 2
- ldr r1, _0802DD74
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802DD60: .4byte gUnknown_202E5D8
-_0802DD64: .4byte gUnknown_202E1C8
-_0802DD68: .4byte 0xfffffdd0
-_0802DD6C: .4byte 0xfffffe20
-_0802DD70: .4byte gUnknown_202DE58
-_0802DD74: .4byte _0802DD78
- .align 2, 0
-_0802DD78:
- .4byte _0802DDD4
- .4byte _0802DD9C
- .4byte _0802DDB8
- .4byte _0802DD94
- .4byte _0802DD8C
-_0802DD8C:
- movs r0, 0x5
- bl sub_802DC28
- b _0802DE3E
-_0802DD94:
- movs r0, 0x4
- bl sub_802DC28
- b _0802DE3E
-_0802DD9C:
- movs r0, 0x2
- bl sub_802DC28
- ldr r0, _0802DDB4
- ldr r0, [r0]
- ldr r0, [r0, 0x34]
- movs r2, 0xE
- ldrsh r0, [r0, r2]
- bl sub_8098214
- b _0802DE3E
- .align 2, 0
-_0802DDB4: .4byte gUnknown_203B2FC
-_0802DDB8:
- movs r0, 0x3
- bl sub_802DC28
- ldr r0, _0802DDD0
- ldr r0, [r0]
- ldr r0, [r0, 0x34]
- movs r1, 0xE
- ldrsh r0, [r0, r1]
- bl sub_8098214
- b _0802DE3E
- .align 2, 0
-_0802DDD0: .4byte gUnknown_203B2FC
-_0802DDD4:
- movs r0, 0x1
- bl sub_802DC28
- b _0802DE3E
-_0802DDDC:
- ldr r0, _0802DDE0
- b _0802DE1C
- .align 2, 0
-_0802DDE0: .4byte gUnknown_80E0184
-_0802DDE4:
- ldr r0, _0802DDE8
- b _0802DE1C
- .align 2, 0
-_0802DDE8: .4byte gUnknown_80E01A0
-_0802DDEC:
- ldr r0, _0802DDF0
- b _0802DE1C
- .align 2, 0
-_0802DDF0: .4byte gUnknown_80E01C4
-_0802DDF4:
- ldr r0, _0802DDF8
- b _0802DE1C
- .align 2, 0
-_0802DDF8: .4byte gUnknown_80E01F0
-_0802DDFC:
- ldr r0, [r5]
- ldr r0, [r0, 0x34]
- ldrb r0, [r0, 0x10]
- bl sub_8091130
- adds r1, r0, 0
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0802DE1A
- adds r0, r1, 0
- bl sub_80911F8
- bl sub_80910B4
-_0802DE1A:
- ldr r0, _0802DE2C
-_0802DE1C:
- ldr r2, [r5]
- adds r2, 0x38
- ldr r3, _0802DE30
- movs r1, 0
- bl sub_80141B4
- b _0802DE3E
- .align 2, 0
-_0802DE2C: .4byte gUnknown_80E0218
-_0802DE30: .4byte 0x0000010d
-_0802DE34:
- ldr r0, [r5]
- adds r0, 0x8
- movs r1, 0x1
- bl sub_802F204
-_0802DE3E:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_802DC9C
-
- thumb_func_start sub_802DE44
-sub_802DE44:
- push {lr}
- bl sub_802F298
- cmp r0, 0x1
- bls _0802DE5C
- cmp r0, 0x3
- bhi _0802DE5C
- bl sub_802F2C0
- movs r0, 0x7
- bl sub_802DC28
-_0802DE5C:
- pop {r0}
- bx r0
- thumb_func_end sub_802DE44
-
- thumb_func_start sub_802DE60
-sub_802DE60:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802DE78
- ldr r0, _0802DE80
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- bl sub_802DC28
-_0802DE78:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0802DE80: .4byte gUnknown_203B2FC
- thumb_func_end sub_802DE60
-
- thumb_func_start sub_802DE84
-sub_802DE84:
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r4, _0802DED8
- movs r0, 0x7C
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
- str r5, [r0, 0xC]
- bl sub_801317C
- ldr r0, [r4]
- ldr r1, [r0, 0xC]
- ldr r2, [r1]
- str r2, [r0, 0x10]
- lsls r1, r2, 1
- adds r1, r2
- lsls r1, 3
- adds r1, 0x18
- adds r1, r0, r1
- str r1, [r0, 0x14]
- adds r0, 0x18
- bl sub_8006518
- ldr r1, [r4]
- ldr r2, [r1, 0x10]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x18
- ldr r0, _0802DEDC
ldm r0!, {r2-r4}
stm r1!, {r2-r4}
ldm r0!, {r2-r4}
stm r1!, {r2-r4}
- bl sub_802DF14
- movs r0, 0x1
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_0802DED8: .4byte gUnknown_203B300
-_0802DEDC: .4byte gUnknown_80E0264
- thumb_func_end sub_802DE84
-
- thumb_func_start sub_802DEE0
-sub_802DEE0:
- push {lr}
- ldr r0, _0802DF00
- ldr r0, [r0]
- ldr r1, [r0, 0x10]
- bl sub_8012A64
- cmp r0, 0x1
- beq _0802DF04
- cmp r0, 0x2
- bne _0802DF0E
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _0802DF10
- .align 2, 0
-_0802DF00: .4byte gUnknown_203B300
-_0802DF04:
- movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _0802DF10
-_0802DF0E:
- movs r0, 0
-_0802DF10:
- pop {r1}
- bx r1
- thumb_func_end sub_802DEE0
-
- thumb_func_start sub_802DF14
-sub_802DF14:
- push {lr}
- bl sub_802DF6C
- bl sub_802DF88
- pop {r0}
- bx r0
- thumb_func_end sub_802DF14
-
- thumb_func_start sub_802DF24
-sub_802DF24:
- push {r4,r5,lr}
- ldr r4, _0802DF64
- ldr r2, [r4]
- cmp r2, 0
- beq _0802DF5E
- ldr r0, [r2, 0x10]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x18
- ldr r0, _0802DF68
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x18
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802DF5E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802DF64: .4byte gUnknown_203B300
-_0802DF68: .4byte gUnknown_80E0248
- thumb_func_end sub_802DF24
-
- thumb_func_start sub_802DF6C
-sub_802DF6C:
- push {lr}
- bl ResetUnusedInputStruct
- ldr r0, _0802DF84
- ldr r0, [r0]
- adds r0, 0x18
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r0}
- bx r0
- .align 2, 0
-_0802DF84: .4byte gUnknown_203B300
- thumb_func_end sub_802DF6C
-
- thumb_func_start sub_802DF88
-sub_802DF88:
- push {r4,lr}
- ldr r4, _0802DFAC
- ldr r0, [r4]
- ldr r0, [r0, 0x10]
- bl sub_80073B8
- ldr r0, [r4]
- ldr r0, [r0, 0xC]
- bl CreateRescueDescription
- ldr r0, [r4]
- ldr r0, [r0, 0x10]
- bl sub_80073E0
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802DFAC: .4byte gUnknown_203B300
- thumb_func_end sub_802DF88
-
- thumb_func_start sub_802DFB0
-sub_802DFB0:
- push {r4,lr}
- ldr r4, _0802DFD4
- movs r0, 0xB6
- lsls r0, 1
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
- movs r1, 0
- str r1, [r0, 0x64]
- str r1, [r0, 0x68]
+ ldm r0!, {r2-r4}
+ stm r1!, {r2-r4}
+ ldr r2, [r6]
+ ldr r4, _08028760
+ adds r3, r2, r4
movs r0, 0
- bl sub_802E088
+ ldrsh r1, [r3, r0]
movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0802DFD4: .4byte gUnknown_203B304
- thumb_func_end sub_802DFB0
-
- thumb_func_start sub_802DFD8
-sub_802DFD8:
- push {lr}
- ldr r0, _0802DFF0
- ldr r0, [r0]
- ldr r0, [r0]
- cmp r0, 0xB
- bhi _0802E060
- lsls r0, 2
- ldr r1, _0802DFF4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802DFF0: .4byte gUnknown_203B304
-_0802DFF4: .4byte _0802DFF8
- .align 2, 0
-_0802DFF8:
- .4byte _0802E028
- .4byte _0802E030
- .4byte _0802E036
- .4byte _0802E060
- .4byte _0802E03C
- .4byte _0802E03C
- .4byte _0802E042
- .4byte _0802E048
- .4byte _0802E04E
- .4byte _0802E054
- .4byte _0802E054
- .4byte _0802E05A
-_0802E028:
- movs r0, 0x1
- bl sub_802E088
- b _0802E064
-_0802E030:
- bl sub_802E4B0
- b _0802E064
-_0802E036:
- bl nullsub_133
- b _0802E064
-_0802E03C:
- bl sub_802E578
- b _0802E064
-_0802E042:
- bl sub_802E60C
- b _0802E064
-_0802E048:
- bl sub_802E73C
- b _0802E064
-_0802E04E:
- bl sub_802E758
- b _0802E064
-_0802E054:
- bl sub_802E774
- b _0802E064
-_0802E05A:
- bl sub_802E7D0
- b _0802E064
-_0802E060:
- movs r0, 0x3
- b _0802E066
-_0802E064:
- movs r0, 0
-_0802E066:
- pop {r1}
- bx r1
- thumb_func_end sub_802DFD8
-
- thumb_func_start sub_802E06C
-sub_802E06C:
- push {r4,lr}
- ldr r4, _0802E084
- ldr r0, [r4]
- cmp r0, 0
- beq _0802E07E
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802E07E:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802E084: .4byte gUnknown_203B304
- thumb_func_end sub_802E06C
-
- thumb_func_start sub_802E088
-sub_802E088:
- push {lr}
- ldr r1, _0802E09C
+ negs r0, r0
+ cmp r1, r0
+ beq _08028736
+ adds r0, r2, 0
+ adds r0, 0xD8
+ ldr r1, _08028764
ldr r1, [r1]
- str r0, [r1]
- bl sub_802E0A0
- bl sub_802E1AC
- pop {r0}
- bx r0
- .align 2, 0
-_0802E09C: .4byte gUnknown_203B304
- thumb_func_end sub_802E088
-
- thumb_func_start sub_802E0A0
-sub_802E0A0:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r4, _0802E0C8
- ldr r0, [r4]
- movs r6, 0x86
- lsls r6, 1
- adds r0, r6
- bl sub_8006518
- ldr r0, [r4]
- ldr r5, [r0]
- cmp r5, 0x1
- beq _0802E0D0
- cmp r5, 0x6
- beq _0802E124
- movs r3, 0
- ldr r2, _0802E0CC
- b _0802E168
- .align 2, 0
-_0802E0C8: .4byte gUnknown_203B304
-_0802E0CC: .4byte gUnknown_80E0284
-_0802E0D0:
- mov r12, r6
- ldr r0, _0802E118
- mov r8, r0
movs r2, 0
- movs r3, 0x3
-_0802E0DA:
- ldr r1, [r4]
+ ldrsh r3, [r3, r2]
+ movs r2, 0x58
+ muls r2, r3
adds r1, r2
- add r1, r12
- mov r0, r8
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- adds r2, 0x18
- subs r3, 0x1
- cmp r3, 0
- bge _0802E0DA
- bl CreateMailboxMenu
- ldr r3, _0802E11C
- ldr r2, [r3]
- movs r0, 0x9E
- lsls r0, 1
- adds r2, r0
- ldr r1, _0802E120
- ldm r1!, {r4-r6}
- stm r2!, {r4-r6}
- ldm r1!, {r4,r5,r7}
- stm r2!, {r4,r5,r7}
- ldr r1, [r3]
- adds r0, r1, r0
- adds r1, 0xBC
- bl sub_8012CAC
- b _0802E188
- .align 2, 0
-_0802E118: .4byte gUnknown_80E0284
-_0802E11C: .4byte gUnknown_203B304
-_0802E120: .4byte gUnknown_80E029C
-_0802E124:
- bl CreateMailActionMenu
- ldr r2, [r4]
- movs r0, 0x9E
- lsls r0, 1
- adds r2, r0
- ldr r1, _0802E160
- ldm r1!, {r3,r6,r7}
- stm r2!, {r3,r6,r7}
- ldm r1!, {r3,r6,r7}
- stm r2!, {r3,r6,r7}
- ldr r1, [r4]
- adds r0, r1, r0
- adds r1, 0xBC
- bl sub_8012CAC
- ldr r1, [r4]
- movs r4, 0xA4
- lsls r4, 1
- adds r0, r1, r4
- strh r5, [r0]
- movs r5, 0xAA
- lsls r5, 1
- adds r1, r5
- ldr r0, _0802E164
- ldm r0!, {r2,r6,r7}
- stm r1!, {r2,r6,r7}
- ldm r0!, {r3-r5}
- stm r1!, {r3-r5}
- b _0802E188
- .align 2, 0
-_0802E160: .4byte gUnknown_80E02B4
-_0802E164: .4byte gUnknown_80E02CC
-_0802E168:
- ldr r0, [r4]
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 3
- adds r0, r1
- movs r6, 0x86
- lsls r6, 1
- adds r0, r6
- adds r1, r2, 0
- ldm r1!, {r5-r7}
- stm r0!, {r5-r7}
- ldm r1!, {r5-r7}
- stm r0!, {r5-r7}
- adds r3, 0x1
- cmp r3, 0x3
- ble _0802E168
-_0802E188:
- bl ResetUnusedInputStruct
- ldr r0, _0802E1A8
- ldr r0, [r0]
- movs r7, 0x86
- lsls r7, 1
- adds r0, r7
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802E1A8: .4byte gUnknown_203B304
- thumb_func_end sub_802E0A0
-
- thumb_func_start sub_802E1AC
-sub_802E1AC:
- push {r4,lr}
- sub sp, 0x8
- ldr r1, _0802E1C8
- ldr r0, [r1]
- ldr r0, [r0]
- adds r4, r1, 0
- cmp r0, 0xB
- bhi _0802E2AA
- lsls r0, 2
- ldr r1, _0802E1CC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802E1C8: .4byte gUnknown_203B304
-_0802E1CC: .4byte _0802E1D0
- .align 2, 0
-_0802E1D0:
- .4byte _0802E2AA
- .4byte _0802E200
- .4byte _0802E2AA
- .4byte _0802E2AA
- .4byte _0802E21E
- .4byte _0802E22A
- .4byte _0802E232
- .4byte _0802E260
- .4byte _0802E286
- .4byte _0802E28E
- .4byte _0802E29A
- .4byte _0802E2A2
-_0802E200:
- ldr r2, [r4]
- adds r0, r2, 0
- adds r0, 0x6C
- adds r1, r2, 0
- adds r1, 0xBC
- adds r3, r2, 0
- adds r3, 0xFC
- ldr r2, [r2, 0x64]
- str r2, [sp]
- movs r2, 0x2
- str r2, [sp, 0x4]
- movs r2, 0
- bl sub_8012D60
- b _0802E2AA
-_0802E21E:
- movs r0, 0
- movs r1, 0
- movs r2, 0x4
- bl sub_802BD14
- b _0802E2AA
-_0802E22A:
- movs r0, 0x1
- bl sub_802BE94
- b _0802E2AA
-_0802E232:
- bl CreateMailMenu
- movs r0, 0x3
- bl CreateMailAcceptedStatusBox
- ldr r0, _0802E25C
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x6C
- adds r1, r2, 0
- adds r1, 0xBC
- ldr r2, [r2, 0x68]
- str r2, [sp]
- movs r2, 0x2
- str r2, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_8012D60
- b _0802E2AA
- .align 2, 0
-_0802E25C: .4byte gUnknown_203B304
-_0802E260:
- ldr r0, [r4]
- ldrb r0, [r0, 0x8]
- bl sub_8095FE8
- ldr r1, [r4]
- adds r1, 0xC
- bl sub_803B35C
- ldr r0, [r4]
- movs r1, 0x3
- str r1, [r0, 0xC]
- adds r0, 0x50
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_802DE84
- b _0802E2AA
-_0802E286:
- movs r0, 0
- bl sub_802C860
- b _0802E2AA
-_0802E28E:
- movs r0, 0
- movs r1, 0
- movs r2, 0x8
- bl sub_802B640
- b _0802E2AA
-_0802E29A:
- movs r0, 0x1
- bl sub_802B7D0
- b _0802E2AA
-_0802E2A2:
- ldr r0, [r4]
- ldrb r0, [r0, 0x9]
- bl sub_802B9FC
-_0802E2AA:
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802E1AC
-
- thumb_func_start CreateMailboxMenu
-CreateMailboxMenu:
- push {r4-r7,lr}
- ldr r4, _0802E380
- ldr r0, [r4]
- adds r0, 0xFC
- movs r1, 0
- movs r2, 0x10
- bl MemoryFill16
- ldr r1, [r4]
- adds r2, r1, 0
- adds r2, 0xBC
- ldr r0, _0802E384
- str r0, [r2]
- adds r1, 0xC0
- movs r0, 0x2
- str r0, [r1]
- bl sub_802C0E8
- lsls r0, 24
- cmp r0, 0
- beq _0802E2E6
- ldr r0, [r4]
- adds r0, 0xFC
- movs r1, 0x1
- strh r1, [r0]
-_0802E2E6:
- movs r5, 0x1
- ldr r1, [r4]
- movs r6, 0x1
- adds r2, r1, 0
- adds r2, 0xC4
- ldr r0, _0802E388
- str r0, [r2]
- adds r1, 0xC8
- movs r0, 0x3
- str r0, [r1]
- bl sub_802C83C
- lsls r0, 24
- cmp r0, 0
- beq _0802E30A
- ldr r0, [r4]
- adds r0, 0xFE
- strh r5, [r0]
-_0802E30A:
- ldr r1, [r4]
- adds r2, r1, 0
- adds r2, 0xCC
- ldr r0, _0802E38C
- str r0, [r2]
- adds r1, 0xD0
- movs r0, 0x4
- str r0, [r1]
- bl sub_802B9D8
- lsls r0, 24
- cmp r0, 0
- beq _0802E32E
- ldr r0, [r4]
- movs r1, 0x80
- lsls r1, 1
- adds r0, r1
- strh r6, [r0]
-_0802E32E:
- movs r5, 0x3
- ldr r2, [r4]
- adds r0, r2, 0
- adds r0, 0xD4
- movs r1, 0
- str r1, [r0]
- adds r0, 0x4
- str r6, [r0]
- movs r3, 0
- adds r6, r4, 0
- mov r12, r2
- mov r4, r12
- adds r4, 0xFC
- adds r2, 0xC0
-_0802E34A:
- ldrh r0, [r4]
- cmp r0, 0
- bne _0802E35A
- ldr r1, [r2]
- mov r7, r12
- ldr r0, [r7, 0x64]
- cmp r1, r0
- beq _0802E3B2
-_0802E35A:
- adds r4, 0x2
- adds r2, 0x8
- adds r3, 0x1
- cmp r3, r5
- blt _0802E34A
- movs r3, 0
- cmp r3, r5
- bge _0802E3B2
- ldr r1, [r6]
- adds r0, r1, 0
- adds r0, 0xFC
- ldrh r0, [r0]
- cmp r0, 0
- bne _0802E390
- adds r0, r1, 0
- adds r0, 0xC0
- ldr r0, [r0]
- str r0, [r1, 0x64]
- b _0802E3B2
- .align 2, 0
-_0802E380: .4byte gUnknown_203B304
-_0802E384: .4byte gMailboxCheckMail
-_0802E388: .4byte gMailboxJobList
-_0802E38C: .4byte gMailboxPKMNNews
-_0802E390:
- adds r3, 0x1
- cmp r3, r5
- bge _0802E3B2
+ movs r2, 0x58
+ bl memcpy
+_08028736:
ldr r2, [r6]
- lsls r0, r3, 1
- adds r1, r2, 0
- adds r1, 0xFC
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- bne _0802E390
- lsls r0, r3, 3
- adds r1, r2, 0
- adds r1, 0xC0
- adds r1, r0
- ldr r0, [r1]
- str r0, [r2, 0x64]
-_0802E3B2:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end CreateMailboxMenu
-
- thumb_func_start CreateMailActionMenu
-CreateMailActionMenu:
- push {r4-r7,lr}
- movs r5, 0
- ldr r4, _0802E3F0
- ldr r0, [r4]
- ldrb r0, [r0, 0x8]
- bl sub_8095FE8
- adds r7, r0, 0
- ldrb r0, [r7]
- cmp r0, 0x1
- bne _0802E3FC
- ldr r2, [r4]
+ ldr r0, [r2, 0x40]
adds r1, r2, 0
- adds r1, 0xBC
- ldr r0, _0802E3F4
- str r0, [r1]
- adds r1, 0x4
- movs r0, 0x6
- str r0, [r1]
- adds r1, 0x4
- ldr r0, _0802E3F8
- str r0, [r1]
- adds r1, 0x4
- movs r0, 0x7
- str r0, [r1]
- movs r5, 0x2
- b _0802E44A
- .align 2, 0
-_0802E3F0: .4byte gUnknown_203B304
-_0802E3F4: .4byte gMailActionStore
-_0802E3F8: .4byte gMailActionRead
-_0802E3FC:
- ldr r1, [r4]
- adds r2, r1, 0
- adds r2, 0xBC
- ldr r0, _0802E494
- ldr r0, [r0]
- str r0, [r2]
- adds r1, 0xC0
- movs r0, 0x5
- str r0, [r1]
- adds r0, r7, 0
- bl sub_80968B0
- lsls r0, 24
- cmp r0, 0
- bne _0802E422
- bl sub_80969AC
- cmp r0, 0x7
- ble _0802E42C
-_0802E422:
- ldr r0, [r4]
- adds r0, 0xC0
- movs r1, 0x1
- negs r1, r1
- str r1, [r0]
-_0802E42C:
- adds r5, 0x1
- ldr r4, _0802E498
+ adds r1, 0xA8
+ adds r2, r5
+_08028740:
+ bl sub_8037D64
+ ldr r1, [r6]
+ str r0, [r1, 0x44]
+_08028748:
+ ldr r4, _08028768
ldr r2, [r4]
- lsls r3, r5, 3
- adds r0, r2, 0
- adds r0, 0xBC
- adds r0, r3
- ldr r1, _0802E49C
- ldr r1, [r1]
- str r1, [r0]
- adds r2, 0xC0
- adds r2, r3
- movs r0, 0x8
- str r0, [r2]
- adds r5, 0x1
-_0802E44A:
- mov r12, r4
- mov r0, r12
- ldr r4, [r0]
- lsls r2, r5, 3
- adds r0, r4, 0
- adds r0, 0xBC
- adds r0, r2
- movs r1, 0
- str r1, [r0]
- adds r1, r4, 0
- adds r1, 0xC0
- adds r2, r1, r2
- movs r0, 0x1
- str r0, [r2]
- movs r3, 0
- cmp r3, r5
- bge _0802E486
- movs r6, 0x1
- negs r6, r6
- adds r2, r1, 0
-_0802E472:
- ldr r1, [r2]
- cmp r1, r6
- beq _0802E47E
- ldr r0, [r4, 0x68]
- cmp r1, r0
- beq _0802E4A8
-_0802E47E:
- adds r2, 0x8
- adds r3, 0x1
- cmp r3, r5
- blt _0802E472
-_0802E486:
- ldrb r0, [r7]
- cmp r0, 0x1
- bne _0802E4A0
- mov r0, r12
- ldr r1, [r0]
- movs r0, 0x7
- b _0802E4A6
- .align 2, 0
-_0802E494: .4byte gUnknown_80D4990
-_0802E498: .4byte gUnknown_203B304
-_0802E49C: .4byte gUnknown_80D4970
-_0802E4A0:
- mov r0, r12
- ldr r1, [r0]
- movs r0, 0x8
-_0802E4A6:
- str r0, [r1, 0x68]
-_0802E4A8:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end CreateMailActionMenu
-
- thumb_func_start sub_802E4B0
-sub_802E4B0:
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- ldr r4, _0802E4F0
- ldr r0, [r4]
- adds r0, 0x6C
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _0802E4DC
- ldr r0, [r4]
- adds r0, 0x6C
- mov r1, sp
- bl sub_8013114
- ldr r1, [sp]
- cmp r1, 0x1
- beq _0802E4DC
- ldr r0, [r4]
- str r1, [r0, 0x64]
-_0802E4DC:
- ldr r0, [sp]
- subs r0, 0x1
- cmp r0, 0x7
- bhi _0802E56E
- lsls r0, 2
- ldr r1, _0802E4F4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802E4F0: .4byte gUnknown_203B304
-_0802E4F4: .4byte _0802E4F8
- .align 2, 0
-_0802E4F8:
- .4byte _0802E568
- .4byte _0802E518
- .4byte _0802E52A
- .4byte _0802E53C
- .4byte _0802E56E
- .4byte _0802E56E
- .4byte _0802E56E
- .4byte _0802E560
-_0802E518:
- bl sub_802C0E8
- lsls r0, 24
- cmp r0, 0
- bne _0802E54E
- movs r0, 0x4
- bl sub_802E088
- b _0802E56E
-_0802E52A:
- bl sub_802C83C
- lsls r0, 24
- cmp r0, 0
- bne _0802E54E
- movs r0, 0x8
- bl sub_802E088
- b _0802E56E
-_0802E53C:
- bl sub_802B9D8
- lsls r0, 24
- cmp r0, 0
- bne _0802E54E
- movs r0, 0x9
- bl sub_802E088
- b _0802E56E
-_0802E54E:
- ldr r0, _0802E55C
- ldr r0, [r0]
- adds r0, 0x6C
- movs r1, 0x1
- bl sub_8012EA4
- b _0802E56E
- .align 2, 0
-_0802E55C: .4byte gUnknown_203B304
-_0802E560:
- movs r0, 0x2
- bl sub_802E088
- b _0802E56E
-_0802E568:
- movs r0, 0x3
- bl sub_802E088
-_0802E56E:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802E4B0
-
- thumb_func_start sub_802E578
-sub_802E578:
- push {r4,lr}
- movs r0, 0x1
- bl sub_802BDEC
- cmp r0, 0x4
- bhi _0802E606
- lsls r0, 2
- ldr r1, _0802E590
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802E590: .4byte _0802E594
- .align 2, 0
-_0802E594:
- .4byte _0802E606
- .4byte _0802E606
- .4byte _0802E5FC
- .4byte _0802E5A8
- .4byte _0802E5C0
-_0802E5A8:
- bl sub_802BE74
- ldr r1, _0802E5BC
- ldr r1, [r1]
- strb r0, [r1, 0x8]
- movs r0, 0x6
- bl sub_802E088
- b _0802E606
- .align 2, 0
-_0802E5BC: .4byte gUnknown_203B304
-_0802E5C0:
- bl sub_802BE74
- ldr r4, _0802E5F0
- ldr r1, [r4]
- strb r0, [r1, 0x8]
- ldr r0, [r4]
- ldrb r0, [r0, 0x8]
- bl sub_8095FE8
- adds r2, r0, 0
- ldrb r0, [r2]
- cmp r0, 0x1
- bne _0802E5F4
- ldr r1, [r4]
- ldrb r0, [r2, 0x5]
- strb r0, [r1, 0x9]
- ldr r1, [r4]
- movs r0, 0x5
- str r0, [r1, 0x4]
- movs r0, 0xB
- bl sub_802E088
- b _0802E606
- .align 2, 0
-_0802E5F0: .4byte gUnknown_203B304
-_0802E5F4:
- movs r0, 0x7
- bl sub_802E088
- b _0802E606
-_0802E5FC:
- bl sub_802BEDC
- movs r0, 0x1
- bl sub_802E088
-_0802E606:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802E578
-
- thumb_func_start sub_802E60C
-sub_802E60C:
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- bl sub_802BDEC
- ldr r4, _0802E650
- ldr r0, [r4]
- adds r0, 0x6C
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _0802E63C
- ldr r0, [r4]
- adds r0, 0x6C
- mov r1, sp
- bl sub_8013114
- ldr r1, [sp]
- cmp r1, 0x1
- beq _0802E63C
- ldr r0, [r4]
- str r1, [r0, 0x68]
-_0802E63C:
- ldr r0, [sp]
- subs r0, 0x1
- cmp r0, 0x7
- bhi _0802E732
- lsls r0, 2
- ldr r1, _0802E654
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802E650: .4byte gUnknown_203B304
-_0802E654: .4byte _0802E658
- .align 2, 0
-_0802E658:
- .4byte _0802E72C
- .4byte _0802E732
- .4byte _0802E732
- .4byte _0802E732
- .4byte _0802E678
- .4byte _0802E6BC
- .4byte _0802E704
- .4byte _0802E6B4
-_0802E678:
- ldr r0, _0802E6AC
- bl sub_8011988
- ldr r4, _0802E6B0
- ldr r0, [r4]
- ldrb r0, [r0, 0x8]
- bl sub_8095FE8
- bl sub_8096A78
- bl sub_8096C80
- bl sub_8096D24
- ldr r0, [r4]
- ldrb r0, [r0, 0x8]
- bl sub_8096040
- bl sub_8096078
- bl sub_802C0E8
- lsls r0, 24
- cmp r0, 0
- bne _0802E6E8
- b _0802E6FC
- .align 2, 0
-_0802E6AC: .4byte 0x00000133
-_0802E6B0: .4byte gUnknown_203B304
-_0802E6B4:
- movs r0, 0x7
- bl sub_802E088
- b _0802E732
-_0802E6BC:
- ldr r0, _0802E6F4
- bl sub_8011988
- ldr r4, _0802E6F8
- ldr r0, [r4]
- ldrb r0, [r0, 0x8]
- bl sub_8095FE8
- ldrb r0, [r0, 0x5]
- bl sub_8096DF8
- ldr r0, [r4]
- ldrb r0, [r0, 0x8]
- bl sub_8096040
- bl sub_8096078
- bl sub_802C0E8
- lsls r0, 24
+ ldr r0, [r2, 0x44]
cmp r0, 0
- beq _0802E6FC
-_0802E6E8:
- bl sub_802BEDC
- movs r0, 0x1
- bl sub_802E088
- b _0802E732
- .align 2, 0
-_0802E6F4: .4byte 0x00000133
-_0802E6F8: .4byte gUnknown_203B304
-_0802E6FC:
- movs r0, 0x5
- bl sub_802E088
- b _0802E732
-_0802E704:
- movs r0, 0
- bl PlayMenuSoundEffect
- ldr r4, _0802E728
- ldr r0, [r4]
- ldrb r0, [r0, 0x8]
- bl sub_8095FE8
- ldr r1, [r4]
- ldrb r0, [r0, 0x5]
- strb r0, [r1, 0x9]
- ldr r1, [r4]
- movs r0, 0x5
- str r0, [r1, 0x4]
- movs r0, 0xB
- bl sub_802E088
- b _0802E732
- .align 2, 0
-_0802E728: .4byte gUnknown_203B304
-_0802E72C:
- movs r0, 0x5
- bl sub_802E088
-_0802E732:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802E60C
-
- thumb_func_start sub_802E73C
-sub_802E73C:
- push {lr}
- bl sub_802DEE0
- cmp r0, 0x1
- bls _0802E754
- cmp r0, 0x3
- bhi _0802E754
- bl sub_802DF24
- movs r0, 0x5
- bl sub_802E088
-_0802E754:
- pop {r0}
- bx r0
- thumb_func_end sub_802E73C
-
- thumb_func_start sub_802E758
-sub_802E758:
- push {lr}
- bl sub_802C898
- cmp r0, 0x1
- bls _0802E770
+ bne _0802878A
+ ldr r0, [r2, 0x40]
cmp r0, 0x3
- bhi _0802E770
- bl sub_802C8F4
- movs r0, 0x1
- bl sub_802E088
-_0802E770:
- pop {r0}
- bx r0
- thumb_func_end sub_802E758
-
- thumb_func_start sub_802E774
-sub_802E774:
- push {lr}
- movs r0, 0x1
- bl sub_802B720
+ beq _0802876C
cmp r0, 0x4
- bhi _0802E7CA
- lsls r0, 2
- ldr r1, _0802E78C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802E78C: .4byte _0802E790
- .align 2, 0
-_0802E790:
- .4byte _0802E7CA
- .4byte _0802E7CA
- .4byte _0802E7C0
- .4byte _0802E7A4
- .4byte _0802E7A4
-_0802E7A4:
- bl sub_802B7A8
- ldr r2, _0802E7BC
- ldr r1, [r2]
- strb r0, [r1, 0x9]
- ldr r1, [r2]
- movs r0, 0xA
- str r0, [r1, 0x4]
- movs r0, 0xB
- bl sub_802E088
- b _0802E7CA
- .align 2, 0
-_0802E7BC: .4byte gUnknown_203B304
-_0802E7C0:
- bl sub_802B81C
- movs r0, 0x1
- bl sub_802E088
-_0802E7CA:
- pop {r0}
- bx r0
- thumb_func_end sub_802E774
-
- thumb_func_start sub_802E7D0
-sub_802E7D0:
- push {lr}
- bl sub_802BA8C
- cmp r0, 0x1
- bls _0802E7EC
- cmp r0, 0x3
- bhi _0802E7EC
- bl sub_802BACC
- ldr r0, _0802E7F0
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- bl sub_802E088
-_0802E7EC:
- pop {r0}
- bx r0
- .align 2, 0
-_0802E7F0: .4byte gUnknown_203B304
- thumb_func_end sub_802E7D0
-
- thumb_func_start nullsub_133
-nullsub_133:
- bx lr
- thumb_func_end nullsub_133
-
- thumb_func_start CreateMailAcceptedStatusBox
-CreateMailAcceptedStatusBox:
- push {r4-r6,lr}
- sub sp, 0x8
- adds r4, r0, 0
- bl sub_8008C54
- adds r0, r4, 0
- bl sub_80073B8
- ldr r2, _0802E85C
- movs r6, 0
- str r6, [sp]
- movs r0, 0x3
- movs r1, 0
- adds r3, r4, 0
- bl xxx_call_draw_string
- bl sub_80969AC
- adds r2, r0, 0
- movs r5, 0x7
- str r5, [sp]
- str r4, [sp, 0x4]
- movs r0, 0x12
- movs r1, 0xD
- movs r3, 0x2
- bl sub_8012BC4
- ldr r2, _0802E860
- str r6, [sp]
- movs r0, 0x16
- movs r1, 0xD
- adds r3, r4, 0
- bl xxx_call_draw_string
- str r5, [sp]
- str r4, [sp, 0x4]
- movs r0, 0x23
- movs r1, 0xD
- movs r2, 0x8
- movs r3, 0x2
- bl sub_8012BC4
- adds r0, r4, 0
- bl sub_80073E0
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0802E85C: .4byte gMailAccepted
-_0802E860: .4byte gUnknown_80E0324
- thumb_func_end CreateMailAcceptedStatusBox
-
- thumb_func_start sub_802E864
-sub_802E864:
- push {r4,lr}
- ldr r4, _0802E88C
- movs r0, 0xB6
- lsls r0, 1
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
- movs r1, 0
- str r1, [r0, 0x64]
- str r1, [r0, 0x68]
- str r1, [r0, 0x4]
- movs r0, 0
- bl sub_802E934
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0802E88C: .4byte gUnknown_203B308
- thumb_func_end sub_802E864
-
- thumb_func_start sub_802E890
-sub_802E890:
- push {lr}
- ldr r0, _0802E8A8
- ldr r0, [r0]
- ldr r0, [r0]
- cmp r0, 0x8
- bhi _0802E900
- lsls r0, 2
- ldr r1, _0802E8AC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802E8A8: .4byte gUnknown_203B308
-_0802E8AC: .4byte _0802E8B0
- .align 2, 0
-_0802E8B0:
- .4byte _0802E8D4
- .4byte _0802E8DC
- .4byte _0802E8E2
- .4byte _0802E900
- .4byte _0802E8E8
- .4byte _0802E8E8
- .4byte _0802E8EE
- .4byte _0802E8F4
- .4byte _0802E8FA
-_0802E8D4:
- movs r0, 0x1
- bl sub_802E934
- b _0802E904
-_0802E8DC:
- bl sub_802ECB4
- b _0802E904
-_0802E8E2:
- bl nullsub_134
- b _0802E904
-_0802E8E8:
- bl sub_802ED4C
- b _0802E904
-_0802E8EE:
- bl sub_802EDBC
- b _0802E904
-_0802E8F4:
- bl sub_802EEA0
- b _0802E904
-_0802E8FA:
- bl sub_802EEBC
- b _0802E904
-_0802E900:
- movs r0, 0x3
- b _0802E906
-_0802E904:
- movs r0, 0
-_0802E906:
- pop {r1}
- bx r1
- thumb_func_end sub_802E890
-
- thumb_func_start sub_802E90C
-sub_802E90C:
- ldr r0, _0802E914
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- bx lr
- .align 2, 0
-_0802E914: .4byte gUnknown_203B308
- thumb_func_end sub_802E90C
-
- thumb_func_start sub_802E918
-sub_802E918:
- push {r4,lr}
- ldr r4, _0802E930
- ldr r0, [r4]
- cmp r0, 0
- beq _0802E92A
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802E92A:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802E930: .4byte gUnknown_203B308
- thumb_func_end sub_802E918
-
- thumb_func_start sub_802E934
-sub_802E934:
- push {lr}
- ldr r1, _0802E948
- ldr r1, [r1]
- str r0, [r1]
- bl sub_802E94C
- bl sub_802EA58
- pop {r0}
- bx r0
- .align 2, 0
-_0802E948: .4byte gUnknown_203B308
- thumb_func_end sub_802E934
-
- thumb_func_start sub_802E94C
-sub_802E94C:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r4, _0802E974
- ldr r0, [r4]
- movs r6, 0x86
- lsls r6, 1
- adds r0, r6
- bl sub_8006518
- ldr r0, [r4]
- ldr r5, [r0]
- cmp r5, 0x1
- beq _0802E97C
- cmp r5, 0x6
- beq _0802E9D0
- movs r3, 0
- ldr r2, _0802E978
- b _0802EA14
+ beq _08028776
+ b _0802878A
.align 2, 0
-_0802E974: .4byte gUnknown_203B308
-_0802E978: .4byte gUnknown_80E0330
-_0802E97C:
- mov r12, r6
- ldr r0, _0802E9C4
- mov r8, r0
- movs r2, 0
- movs r3, 0x3
-_0802E986:
- ldr r1, [r4]
- adds r1, r2
- add r1, r12
- mov r0, r8
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- adds r2, 0x18
- subs r3, 0x1
- cmp r3, 0
- bge _0802E986
- bl CreatePelliperBoardMenu
- ldr r3, _0802E9C8
- ldr r2, [r3]
- movs r0, 0x9E
- lsls r0, 1
- adds r2, r0
- ldr r1, _0802E9CC
- ldm r1!, {r4-r6}
- stm r2!, {r4-r6}
- ldm r1!, {r4,r5,r7}
- stm r2!, {r4,r5,r7}
- ldr r1, [r3]
- adds r0, r1, r0
- adds r1, 0xBC
- bl sub_8012CAC
- b _0802EA34
- .align 2, 0
-_0802E9C4: .4byte gUnknown_80E0330
-_0802E9C8: .4byte gUnknown_203B308
-_0802E9CC: .4byte gUnknown_80E0348
-_0802E9D0:
- bl sub_802EC10
- ldr r2, [r4]
- movs r0, 0x9E
- lsls r0, 1
- adds r2, r0
- ldr r1, _0802EA0C
- ldm r1!, {r3,r6,r7}
- stm r2!, {r3,r6,r7}
- ldm r1!, {r3,r6,r7}
- stm r2!, {r3,r6,r7}
- ldr r1, [r4]
- adds r0, r1, r0
- adds r1, 0xBC
- bl sub_8012CAC
- ldr r1, [r4]
- movs r4, 0xA4
- lsls r4, 1
- adds r0, r1, r4
- strh r5, [r0]
- movs r5, 0xAA
- lsls r5, 1
- adds r1, r5
- ldr r0, _0802EA10
- ldm r0!, {r2,r6,r7}
- stm r1!, {r2,r6,r7}
- ldm r0!, {r3-r5}
- stm r1!, {r3-r5}
- b _0802EA34
- .align 2, 0
-_0802EA0C: .4byte gUnknown_80E0360
-_0802EA10: .4byte gUnknown_80E0378
-_0802EA14:
- ldr r0, [r4]
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 3
- adds r0, r1
- movs r6, 0x86
- lsls r6, 1
- adds r0, r6
+_08028760: .4byte 0x00000544
+_08028764: .4byte gUnknown_203B45C
+_08028768: .4byte gUnknown_203B2C0
+_0802876C:
adds r1, r2, 0
- ldm r1!, {r5-r7}
- stm r0!, {r5-r7}
- ldm r1!, {r5-r7}
- stm r0!, {r5-r7}
- adds r3, 0x1
- cmp r3, 0x3
- ble _0802EA14
-_0802EA34:
- bl ResetUnusedInputStruct
- ldr r0, _0802EA54
- ldr r0, [r0]
- movs r7, 0x86
- lsls r7, 1
- adds r0, r7
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802EA54: .4byte gUnknown_203B308
- thumb_func_end sub_802E94C
-
- thumb_func_start sub_802EA58
-sub_802EA58:
- push {r4,lr}
- sub sp, 0x8
- ldr r1, _0802EA74
- ldr r0, [r1]
- ldr r0, [r0]
- adds r4, r1, 0
- cmp r0, 0x8
- bhi _0802EB2C
- lsls r0, 2
- ldr r1, _0802EA78
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802EA74: .4byte gUnknown_203B308
-_0802EA78: .4byte _0802EA7C
- .align 2, 0
-_0802EA7C:
- .4byte _0802EB2C
- .4byte _0802EAA0
- .4byte _0802EB2C
- .4byte _0802EB2C
- .4byte _0802EABE
- .4byte _0802EACA
- .4byte _0802EAD2
- .4byte _0802EB00
- .4byte _0802EB26
-_0802EAA0:
- ldr r2, [r4]
- adds r0, r2, 0
- adds r0, 0x6C
- adds r1, r2, 0
- adds r1, 0xBC
- adds r3, r2, 0
- adds r3, 0xFC
- ldr r2, [r2, 0x64]
- str r2, [sp]
- movs r2, 0x2
- str r2, [sp, 0x4]
- movs r2, 0
- bl sub_8012D60
- b _0802EB2C
-_0802EABE:
- movs r0, 0
- movs r1, 0
- movs r2, 0x4
- bl sub_802C10C
- b _0802EB2C
-_0802EACA:
- movs r0, 0x1
- bl sub_802C28C
- b _0802EB2C
-_0802EAD2:
- bl sub_802C39C
+ adds r1, 0x48
+ adds r2, 0x78
movs r0, 0x3
- bl CreatePelliperAcceptedStatusBox
- ldr r0, _0802EAFC
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x6C
+ b _08028782
+_08028776:
adds r1, r2, 0
- adds r1, 0xBC
- ldr r2, [r2, 0x68]
- str r2, [sp]
- movs r2, 0x2
- str r2, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_8012D60
- b _0802EB2C
- .align 2, 0
-_0802EAFC: .4byte gUnknown_203B308
-_0802EB00:
- ldr r0, [r4]
- ldrb r0, [r0, 0x8]
- bl sub_8096574
- ldr r1, [r4]
- adds r1, 0xC
- bl sub_803B35C
- ldr r0, [r4]
- movs r1, 0x3
- str r1, [r0, 0xC]
- adds r0, 0x50
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_802DE84
- b _0802EB2C
-_0802EB26:
- movs r0, 0
- bl sub_802C860
-_0802EB2C:
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802EA58
-
- thumb_func_start CreatePelliperBoardMenu
-CreatePelliperBoardMenu:
- push {r4-r7,lr}
- ldr r4, _0802EBDC
- ldr r0, [r4]
- adds r0, 0xFC
- movs r1, 0
- movs r2, 0x10
- bl MemoryFill16
- ldr r1, [r4]
- adds r2, r1, 0
- adds r2, 0xBC
- ldr r0, _0802EBE0
- str r0, [r2]
- adds r1, 0xC0
- movs r0, 0x2
- str r0, [r1]
- bl sub_802C4A4
- lsls r0, 24
- cmp r0, 0
- beq _0802EB66
- ldr r0, [r4]
- adds r0, 0xFC
- movs r1, 0x1
- strh r1, [r0]
-_0802EB66:
- movs r5, 0x1
+ adds r1, 0xA8
+ movs r3, 0x98
+ lsls r3, 1
+ adds r2, r3
+ movs r0, 0x4
+_08028782:
+ bl sub_80381F4
ldr r1, [r4]
- adds r2, r1, 0
- adds r2, 0xC4
- ldr r0, _0802EBE4
- str r0, [r2]
- adds r1, 0xC8
- movs r0, 0x3
- str r0, [r1]
- bl sub_802C83C
- lsls r0, 24
- cmp r0, 0
- beq _0802EB88
- ldr r0, [r4]
- adds r0, 0xFE
- strh r5, [r0]
-_0802EB88:
- movs r5, 0x2
- ldr r2, [r4]
- adds r1, r2, 0
- adds r1, 0xCC
- movs r0, 0
- str r0, [r1]
- adds r1, 0x4
- movs r0, 0x1
- str r0, [r1]
- movs r3, 0
- adds r6, r4, 0
- mov r12, r2
- mov r4, r12
- adds r4, 0xFC
- adds r2, 0xC0
-_0802EBA6:
- ldrh r0, [r4]
- cmp r0, 0
- bne _0802EBB6
- ldr r1, [r2]
- mov r7, r12
- ldr r0, [r7, 0x64]
- cmp r1, r0
- beq _0802EC0A
-_0802EBB6:
- adds r4, 0x2
- adds r2, 0x8
- adds r3, 0x1
- cmp r3, r5
- blt _0802EBA6
- movs r3, 0
- cmp r3, r5
- bge _0802EC0A
- ldr r1, [r6]
- adds r0, r1, 0
- adds r0, 0xFC
- ldrh r0, [r0]
- cmp r0, 0
- bne _0802EBE8
- adds r0, r1, 0
- adds r0, 0xC0
+ str r0, [r1, 0x44]
+_0802878A:
+ bl xxx_call_start_bg_music
+ b _08028AF2
+_08028790:
+ ldr r0, [r6]
+ ldr r4, _080287A8
+ adds r0, r4
ldr r0, [r0]
- str r0, [r1, 0x64]
- b _0802EC0A
+ cmp r0, 0xE
+ bne _0802879E
+ b _08028AF2
+_0802879E:
+ cmp r0, 0xE
+ bhi _080287AC
+ cmp r0, 0xD
+ beq _080287B2
+ b _08028AF2
.align 2, 0
-_0802EBDC: .4byte gUnknown_203B308
-_0802EBE0: .4byte gPelliperBoard_BulletinBoard
-_0802EBE4: .4byte gPelliperBoard_JobList
-_0802EBE8:
- adds r3, 0x1
- cmp r3, r5
- bge _0802EC0A
+_080287A8: .4byte 0x00000534
+_080287AC:
+ cmp r0, 0x10
+ bls _080287B2
+ b _08028AF2
+_080287B2:
+ ldr r0, _080287C0
ldr r2, [r6]
- lsls r0, r3, 1
- adds r1, r2, 0
- adds r1, 0xFC
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- bne _0802EBE8
- lsls r0, r3, 3
- adds r1, r2, 0
- adds r1, 0xC0
- adds r1, r0
- ldr r0, [r1]
- str r0, [r2, 0x64]
-_0802EC0A:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end CreatePelliperBoardMenu
-
- thumb_func_start sub_802EC10
-sub_802EC10:
- push {r4-r7,lr}
- movs r6, 0
- ldr r4, _0802ECA8
- ldr r2, [r4]
- adds r1, r2, 0
- adds r1, 0xBC
- ldr r0, _0802ECAC
- ldr r0, [r0]
- str r0, [r1]
- adds r1, 0x4
- movs r0, 0x4
- str r0, [r1]
- ldrb r0, [r2, 0x8]
- bl sub_8096574
- bl sub_80968B0
- lsls r0, 24
- cmp r0, 0
- bne _0802EC40
- bl sub_80969AC
- cmp r0, 0x7
- ble _0802EC4A
-_0802EC40:
- ldr r0, [r4]
- adds r0, 0xC0
- movs r1, 0x1
- negs r1, r1
- str r1, [r0]
-_0802EC4A:
- adds r6, 0x1
- ldr r4, _0802ECA8
- ldr r5, [r4]
- lsls r1, r6, 3
- adds r2, r5, 0
- adds r2, 0xBC
- adds r3, r2, r1
- ldr r0, _0802ECB0
- ldr r0, [r0]
- str r0, [r3]
- adds r3, r5, 0
- adds r3, 0xC0
- adds r1, r3, r1
- movs r0, 0x5
- str r0, [r1]
- adds r6, 0x1
- lsls r1, r6, 3
+ movs r1, 0x84
+ lsls r1, 3
adds r2, r1
- movs r0, 0
- str r0, [r2]
- adds r1, r3, r1
- movs r0, 0x1
- str r0, [r1]
- movs r2, 0
- adds r7, r4, 0
- cmp r2, r6
- bge _0802EC9C
- adds r4, r5, 0
- movs r5, 0x1
- negs r5, r5
- adds r1, r3, 0
-_0802EC88:
- ldr r3, [r1]
- cmp r3, r5
- beq _0802EC94
- ldr r0, [r4, 0x68]
- cmp r3, r0
- beq _0802ECA2
-_0802EC94:
- adds r1, 0x8
- adds r2, 0x1
- cmp r2, r6
- blt _0802EC88
-_0802EC9C:
- ldr r1, [r7]
- movs r0, 0x5
- str r0, [r1, 0x68]
-_0802ECA2:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802ECA8: .4byte gUnknown_203B308
-_0802ECAC: .4byte gUnknown_80D4990
-_0802ECB0: .4byte gUnknown_80D4970
- thumb_func_end sub_802EC10
-
- thumb_func_start sub_802ECB4
-sub_802ECB4:
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- ldr r4, _0802ECF0
- ldr r0, [r4]
- adds r0, 0x6C
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _0802ECE0
- ldr r0, [r4]
- adds r0, 0x6C
- mov r1, sp
- bl sub_8013114
- ldr r1, [sp]
- cmp r1, 0x1
- beq _0802ECE0
- ldr r0, [r4]
- str r1, [r0, 0x64]
-_0802ECE0:
- ldr r0, [sp]
- cmp r0, 0x2
- beq _0802ECFE
- cmp r0, 0x2
- bgt _0802ECF4
- cmp r0, 0x1
- beq _0802ED3C
- b _0802ED42
- .align 2, 0
-_0802ECF0: .4byte gUnknown_203B308
-_0802ECF4:
- cmp r0, 0x3
- beq _0802ED10
- cmp r0, 0x5
- beq _0802ED34
- b _0802ED42
-_0802ECFE:
- bl sub_802C4A4
- lsls r0, 24
- cmp r0, 0
- bne _0802ED22
- movs r0, 0x4
- bl sub_802E934
- b _0802ED42
-_0802ED10:
- bl sub_802C83C
- lsls r0, 24
- cmp r0, 0
- bne _0802ED22
- movs r0, 0x8
- bl sub_802E934
- b _0802ED42
-_0802ED22:
- ldr r0, _0802ED30
- ldr r0, [r0]
- adds r0, 0x6C
- movs r1, 0x1
- bl sub_8012EA4
- b _0802ED42
- .align 2, 0
-_0802ED30: .4byte gUnknown_203B308
-_0802ED34:
- movs r0, 0x2
- bl sub_802E934
- b _0802ED42
-_0802ED3C:
- movs r0, 0x3
- bl sub_802E934
-_0802ED42:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802ECB4
-
- thumb_func_start sub_802ED4C
-sub_802ED4C:
- push {lr}
- movs r0, 0x1
- bl sub_802C1E4
- cmp r0, 0x4
- bhi _0802EDB6
- lsls r0, 2
- ldr r1, _0802ED64
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802ED64: .4byte _0802ED68
- .align 2, 0
-_0802ED68:
- .4byte _0802EDB6
- .4byte _0802EDB6
- .4byte _0802EDAC
- .4byte _0802ED7C
- .4byte _0802ED94
-_0802ED7C:
- bl sub_802C26C
- ldr r1, _0802ED90
- ldr r1, [r1]
- strb r0, [r1, 0x8]
- movs r0, 0x6
- bl sub_802E934
- b _0802EDB6
+ b _08028A72
.align 2, 0
-_0802ED90: .4byte gUnknown_203B308
-_0802ED94:
- bl sub_802C26C
- ldr r1, _0802EDA8
- ldr r1, [r1]
- strb r0, [r1, 0x8]
- movs r0, 0x7
- bl sub_802E934
- b _0802EDB6
- .align 2, 0
-_0802EDA8: .4byte gUnknown_203B308
-_0802EDAC:
- bl sub_802C2D4
- movs r0, 0x1
- bl sub_802E934
-_0802EDB6:
- pop {r0}
- bx r0
- thumb_func_end sub_802ED4C
-
- thumb_func_start sub_802EDBC
-sub_802EDBC:
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- bl sub_802C1E4
- ldr r4, _0802EDFC
- ldr r0, [r4]
- adds r0, 0x6C
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _0802EDEC
- ldr r0, [r4]
- adds r0, 0x6C
- mov r1, sp
- bl sub_8013114
- ldr r1, [sp]
- cmp r1, 0x1
- beq _0802EDEC
- ldr r0, [r4]
- str r1, [r0, 0x68]
-_0802EDEC:
- ldr r0, [sp]
- cmp r0, 0x4
- beq _0802EE06
- cmp r0, 0x4
- bgt _0802EE00
- cmp r0, 0x1
- beq _0802EE90
- b _0802EE96
- .align 2, 0
-_0802EDFC: .4byte gUnknown_203B308
-_0802EE00:
- cmp r0, 0x5
- beq _0802EE88
- b _0802EE96
-_0802EE06:
- ldr r0, _0802EE28
- bl sub_8011988
- ldr r4, _0802EE2C
- ldr r0, [r4]
- ldrb r0, [r0, 0x8]
- bl sub_8096574
- ldrb r1, [r0]
- cmp r1, 0x3
- beq _0802EE3C
- cmp r1, 0x3
- bgt _0802EE30
- cmp r1, 0x2
- beq _0802EE36
- b _0802EE5E
- .align 2, 0
-_0802EE28: .4byte 0x00000133
-_0802EE2C: .4byte gUnknown_203B308
-_0802EE30:
- cmp r1, 0x4
- beq _0802EE42
- b _0802EE5E
-_0802EE36:
- ldr r0, [r4]
- movs r1, 0x1
- b _0802EE46
-_0802EE3C:
- ldr r0, [r4]
- movs r1, 0x2
- b _0802EE46
-_0802EE42:
- ldr r0, [r4]
- movs r1, 0x3
-_0802EE46:
- str r1, [r0, 0x4]
- ldrb r0, [r0, 0x8]
- bl sub_80965B8
- bl sub_80965F4
- bl sub_802C2D4
- movs r0, 0x3
- bl sub_802E934
- b _0802EE96
-_0802EE5E:
- bl sub_8096A78
- bl sub_8096C80
- bl sub_8096D24
- bl sub_802C4A4
- lsls r0, 24
- cmp r0, 0
- beq _0802EE80
- bl sub_802C2D4
- movs r0, 0x1
- bl sub_802E934
- b _0802EE96
-_0802EE80:
- movs r0, 0x5
- bl sub_802E934
- b _0802EE96
-_0802EE88:
- movs r0, 0x7
- bl sub_802E934
- b _0802EE96
-_0802EE90:
- movs r0, 0x5
- bl sub_802E934
-_0802EE96:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802EDBC
-
- thumb_func_start sub_802EEA0
-sub_802EEA0:
- push {lr}
- bl sub_802DEE0
- cmp r0, 0x1
- bls _0802EEB8
- cmp r0, 0x3
- bhi _0802EEB8
- bl sub_802DF24
- movs r0, 0x5
- bl sub_802E934
-_0802EEB8:
- pop {r0}
- bx r0
- thumb_func_end sub_802EEA0
-
- thumb_func_start sub_802EEBC
-sub_802EEBC:
- push {lr}
- bl sub_802C898
- cmp r0, 0x1
- bls _0802EED4
- cmp r0, 0x3
- bhi _0802EED4
- bl sub_802C8F4
- movs r0, 0x1
- bl sub_802E934
-_0802EED4:
- pop {r0}
- bx r0
- thumb_func_end sub_802EEBC
-
- thumb_func_start nullsub_134
-nullsub_134:
- bx lr
- thumb_func_end nullsub_134
-
- thumb_func_start CreatePelliperAccepedStatusBox
-CreatePelliperAcceptedStatusBox:
- push {r4-r6,lr}
- sub sp, 0x8
- adds r4, r0, 0
- bl sub_8008C54
- adds r0, r4, 0
- bl sub_80073B8
- ldr r2, _0802EF40
- movs r6, 0
- str r6, [sp]
- movs r0, 0x3
- movs r1, 0
- adds r3, r4, 0
- bl xxx_call_draw_string
- bl sub_80969AC
- adds r2, r0, 0
- movs r5, 0x7
- str r5, [sp]
- str r4, [sp, 0x4]
- movs r0, 0x12
- movs r1, 0xD
- movs r3, 0x2
- bl sub_8012BC4
- ldr r2, _0802EF44
- str r6, [sp]
- movs r0, 0x16
- movs r1, 0xD
- adds r3, r4, 0
- bl xxx_call_draw_string
- str r5, [sp]
- str r4, [sp, 0x4]
- movs r0, 0x23
- movs r1, 0xD
- movs r2, 0x8
- movs r3, 0x2
- bl sub_8012BC4
- adds r0, r4, 0
- bl sub_80073E0
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
+_080287C0: .4byte gUnknown_80DE06C
+_080287C4:
+ ldr r0, _080287D0
+ ldr r2, [r6]
+ movs r3, 0x84
+ lsls r3, 3
+ adds r2, r3
+ b _08028A72
.align 2, 0
-_0802EF40: .4byte gUnknown_80E03AC
-_0802EF44: .4byte gUnknown_80E03B8
- thumb_func_end CreatePelliperAcceptedStatusBox
-
- thumb_func_start sub_802EF48
-sub_802EF48:
- push {r4,lr}
- ldr r4, _0802EF68
- movs r0, 0xA8
- lsls r0, 1
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
- movs r0, 0
- bl sub_802EFEC
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
+_080287D0: .4byte gUnknown_80DE0C0
+_080287D4:
+ ldr r0, _080287D8
+ b _08028A6A
.align 2, 0
-_0802EF68: .4byte gUnknown_203B30C
- thumb_func_end sub_802EF48
-
- thumb_func_start sub_802EF6C
-sub_802EF6C:
- push {lr}
- ldr r0, _0802EF84
- ldr r0, [r0]
- ldr r0, [r0]
- cmp r0, 0x5
- bhi _0802EFBA
- lsls r0, 2
- ldr r1, _0802EF88
+_080287D8: .4byte gUnknown_80DE124
+_080287DC:
+ ldr r0, [r6]
+ movs r1, 0xEF
+ lsls r1, 2
adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802EF84: .4byte gUnknown_203B30C
-_0802EF88: .4byte _0802EF8C
- .align 2, 0
-_0802EF8C:
- .4byte _0802EFA4
- .4byte _0802EFA4
- .4byte _0802EFAA
- .4byte _0802EFB0
- .4byte _0802EFB6
- .4byte _0802EFBA
-_0802EFA4:
- bl sub_802F148
- b _0802EFBE
-_0802EFAA:
- bl sub_802F184
- b _0802EFBE
-_0802EFB0:
- bl sub_802F1E8
- b _0802EFBE
-_0802EFB6:
- movs r0, 0x3
- b _0802EFC0
-_0802EFBA:
- movs r0, 0x2
- b _0802EFC0
-_0802EFBE:
- movs r0, 0
-_0802EFC0:
- pop {r1}
- bx r1
- thumb_func_end sub_802EF6C
-
- thumb_func_start sub_802EFC4
-sub_802EFC4:
- ldr r0, _0802EFCC
- ldr r0, [r0]
- ldrb r0, [r0, 0x4]
- bx lr
- .align 2, 0
-_0802EFCC: .4byte gUnknown_203B30C
- thumb_func_end sub_802EFC4
-
- thumb_func_start sub_802EFD0
-sub_802EFD0:
- push {r4,lr}
- ldr r4, _0802EFE8
- ldr r0, [r4]
- cmp r0, 0
- beq _0802EFE2
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802EFE2:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802EFE8: .4byte gUnknown_203B30C
- thumb_func_end sub_802EFD0
-
- thumb_func_start sub_802EFEC
-sub_802EFEC:
- push {lr}
- ldr r1, _0802F000
- ldr r1, [r1]
- str r0, [r1]
- bl sub_802F004
- bl sub_802F088
- pop {r0}
- bx r0
- .align 2, 0
-_0802F000: .4byte gUnknown_203B30C
- thumb_func_end sub_802EFEC
-
- thumb_func_start sub_802F004
-sub_802F004:
- push {r4-r7,lr}
- ldr r4, _0802F03C
- ldr r0, [r4]
- adds r0, 0xF0
bl sub_8006518
- ldr r0, [r4]
- ldr r0, [r0]
- cmp r0, 0x2
- bne _0802F044
- bl sub_802F108
- ldr r2, [r4]
- movs r0, 0x90
- lsls r0, 1
- adds r2, r0
- ldr r1, _0802F040
- ldm r1!, {r3,r5,r6}
- stm r2!, {r3,r5,r6}
- ldm r1!, {r3,r5,r7}
- stm r2!, {r3,r5,r7}
- ldr r1, [r4]
- adds r0, r1, r0
- adds r1, 0xB0
- bl sub_8012CAC
- b _0802F066
- .align 2, 0
-_0802F03C: .4byte gUnknown_203B30C
-_0802F040: .4byte gUnknown_80E03F4
-_0802F044:
- mov r12, r4
- ldr r4, _0802F080
- movs r2, 0
- movs r3, 0x3
-_0802F04C:
- mov r6, r12
- ldr r1, [r6]
- adds r1, r2
- adds r1, 0xF0
- adds r0, r4, 0
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- adds r2, 0x18
- subs r3, 0x1
- cmp r3, 0
- bge _0802F04C
-_0802F066:
bl ResetUnusedInputStruct
- ldr r0, _0802F084
- ldr r0, [r0]
- adds r0, 0xF0
+ movs r0, 0
movs r1, 0x1
movs r2, 0x1
bl sub_800641C
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802F080: .4byte gUnknown_80E03C4
-_0802F084: .4byte gUnknown_203B30C
- thumb_func_end sub_802F004
-
- thumb_func_start sub_802F088
-sub_802F088:
- push {r4-r6,lr}
- sub sp, 0x8
- ldr r6, _0802F0A0
- ldr r0, [r6]
- ldr r5, [r0]
- cmp r5, 0x1
- beq _0802F0B6
- cmp r5, 0x1
- bgt _0802F0A4
- cmp r5, 0
- beq _0802F0AE
- b _0802F100
- .align 2, 0
-_0802F0A0: .4byte gUnknown_203B30C
-_0802F0A4:
- cmp r5, 0x2
- beq _0802F0BE
- cmp r5, 0x3
- beq _0802F0DA
- b _0802F100
-_0802F0AE:
- movs r0, 0
- bl sub_802CDD4
- b _0802F100
-_0802F0B6:
- movs r0, 0x1
- bl sub_802CED8
- b _0802F100
-_0802F0BE:
- bl sub_802CFD0
- ldr r1, [r6]
- adds r0, r1, 0
- adds r0, 0x60
- adds r1, 0xB0
- movs r2, 0x3
- str r2, [sp]
- str r5, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_8012D60
- b _0802F100
-_0802F0DA:
- ldrb r0, [r0, 0x4]
- bl sub_803B344
- adds r4, r0, 0
ldr r1, [r6]
adds r1, 0x8
- bl sub_803B35C
- ldr r0, [r6]
- str r5, [r0, 0x8]
- adds r0, 0x4C
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r6]
- ldr r1, [r4, 0x18]
- str r1, [r0, 0x58]
- adds r0, 0x8
- bl sub_802DE84
-_0802F100:
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_802F088
-
- thumb_func_start sub_802F108
-sub_802F108:
- ldr r0, _0802F13C
- ldr r0, [r0]
- mov r12, r0
- movs r3, 0
- mov r1, r12
- adds r1, 0xB0
- ldr r0, _0802F140
- str r0, [r1]
- adds r1, 0x4
- movs r0, 0x2
- str r0, [r1]
- movs r2, 0x1
- adds r1, 0x4
- ldr r0, _0802F144
- ldr r0, [r0]
- str r0, [r1]
- adds r1, 0x4
- movs r0, 0x3
- str r0, [r1]
- mov r0, r12
- adds r0, 0xC0
- str r3, [r0]
- adds r0, 0x4
- str r2, [r0]
- bx lr
- .align 2, 0
-_0802F13C: .4byte gUnknown_203B30C
-_0802F140: .4byte gUnknown_80E040C
-_0802F144: .4byte gUnknown_80D4970
- thumb_func_end sub_802F108
-
- thumb_func_start sub_802F148
-sub_802F148:
- push {lr}
- movs r0, 0x1
- bl sub_802CE5C
- cmp r0, 0x2
- beq _0802F174
- cmp r0, 0x2
- bcc _0802F17E
- cmp r0, 0x3
- bne _0802F17E
- bl sub_802CEBC
- ldr r1, _0802F170
- ldr r1, [r1]
- strb r0, [r1, 0x4]
- movs r0, 0x2
- bl sub_802EFEC
- b _0802F17E
- .align 2, 0
-_0802F170: .4byte gUnknown_203B30C
-_0802F174:
- bl sub_802CF14
- movs r0, 0x5
- bl sub_802EFEC
-_0802F17E:
- pop {r0}
- bx r0
- thumb_func_end sub_802F148
-
- thumb_func_start sub_802F184
-sub_802F184:
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- bl sub_802CE5C
- ldr r4, _0802F1BC
- ldr r0, [r4]
- adds r0, 0x60
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _0802F1AA
- ldr r0, [r4]
- adds r0, 0x60
- mov r1, sp
- bl sub_8013114
-_0802F1AA:
- ldr r0, [sp]
- cmp r0, 0x2
- beq _0802F1C6
- cmp r0, 0x2
- bgt _0802F1C0
- cmp r0, 0x1
- beq _0802F1DA
- b _0802F1E0
- .align 2, 0
-_0802F1BC: .4byte gUnknown_203B30C
-_0802F1C0:
- cmp r0, 0x3
- beq _0802F1D2
- b _0802F1E0
-_0802F1C6:
- bl sub_802CF14
movs r0, 0x4
- bl sub_802EFEC
- b _0802F1E0
-_0802F1D2:
- movs r0, 0x3
- bl sub_802EFEC
- b _0802F1E0
-_0802F1DA:
- movs r0, 0x1
- bl sub_802EFEC
-_0802F1E0:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_802F184
-
- thumb_func_start sub_802F1E8
-sub_802F1E8:
- push {lr}
- bl sub_802DEE0
- cmp r0, 0x1
- bls _0802F200
- cmp r0, 0x3
- bhi _0802F200
- bl sub_802DF24
- movs r0, 0x1
- bl sub_802EFEC
-_0802F200:
- pop {r0}
- bx r0
- thumb_func_end sub_802F1E8
-
- thumb_func_start sub_802F204
-sub_802F204:
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r4, r1, 24
- lsrs r4, 24
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r5, _0802F28C
- movs r0, 0x84
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r5]
- str r6, [r0, 0x10]
- movs r6, 0
- str r6, [r0, 0xC]
- strb r4, [r0, 0x8]
- ldr r1, [r5]
- ldr r0, _0802F290
- ldr r1, [r1, 0x10]
- bl strcpy
- ldr r4, _0802F294
- bl sub_808D33C
- adds r1, r0, 0
- adds r0, r4, 0
- bl sub_808DA34
- ldr r0, [r5]
- ldr r0, [r0, 0x10]
- movs r1, 0x14
- ldrsh r0, [r0, r1]
- bl GetDialogueSpriteDataPtr
- ldr r1, [r5]
- str r0, [r1, 0x14]
- str r6, [r1, 0x18]
- adds r1, 0x20
- strb r6, [r1]
- ldr r0, [r5]
- adds r0, 0x21
- strb r6, [r0]
- ldr r0, [r5]
- adds r0, 0x22
- strb r6, [r0]
- ldr r5, [r5]
- movs r0, 0x2
- strh r0, [r5, 0x1C]
- movs r0, 0x8
- strh r0, [r5, 0x1E]
- ldr r0, [r5, 0x14]
- cmp r0, 0
- beq _0802F27C
- ldr r0, [r0, 0x4]
- str r0, [r5, 0x18]
-_0802F27C:
- movs r0, 0
- bl sub_802F2E8
- movs r0, 0x1
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0802F28C: .4byte gUnknown_203B310
-_0802F290: .4byte gUnknown_202E5D8
-_0802F294: .4byte gAvailablePokemonNames
- thumb_func_end sub_802F204
-
- thumb_func_start sub_802F298
-sub_802F298:
- push {lr}
- ldr r0, _0802F2AC
- ldr r0, [r0]
- ldr r0, [r0]
- cmp r0, 0x5
- beq _0802F2B0
- cmp r0, 0x9
- bne _0802F2B6
- movs r0, 0x3
- b _0802F2BC
- .align 2, 0
-_0802F2AC: .4byte gUnknown_203B310
-_0802F2B0:
- bl sub_802F6FC
- b _0802F2BA
-_0802F2B6:
- bl sub_802F718
-_0802F2BA:
- movs r0, 0
-_0802F2BC:
- pop {r1}
- bx r1
- thumb_func_end sub_802F298
-
- thumb_func_start sub_802F2C0
-sub_802F2C0:
- push {r4,lr}
- ldr r4, _0802F2E4
- ldr r0, [r4]
- cmp r0, 0
- beq _0802F2DE
- ldr r0, [r0, 0x14]
- cmp r0, 0
- beq _0802F2D4
- bl CloseFile
-_0802F2D4:
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802F2DE:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802F2E4: .4byte gUnknown_203B310
- thumb_func_end sub_802F2C0
-
- thumb_func_start sub_802F2E8
-sub_802F2E8:
- push {lr}
- ldr r1, _0802F2FC
- ldr r1, [r1]
- str r0, [r1]
- bl sub_802F300
- bl HandleMissionReward
- pop {r0}
- bx r0
- .align 2, 0
-_0802F2FC: .4byte gUnknown_203B310
- thumb_func_end sub_802F2E8
-
- thumb_func_start sub_802F300
-sub_802F300:
- push {r4-r7,lr}
- ldr r4, _0802F350
- ldr r1, [r4]
- ldr r0, [r1]
- cmp r0, 0
- bne _0802F348
- adds r0, r1, 0
- adds r0, 0x24
- bl sub_8006518
- mov r12, r4
- ldr r4, _0802F354
- movs r3, 0
- movs r2, 0x3
-_0802F31C:
- mov r0, r12
- ldr r1, [r0]
- adds r1, r3
- adds r1, 0x24
- adds r0, r4, 0
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- adds r3, 0x18
- subs r2, 0x1
+ bl sub_80151C0
+ b _08028AF2
+_08028802:
+ ldr r4, [r6]
+ movs r2, 0xA7
+ lsls r2, 3
+ adds r0, r4, r2
+ ldr r2, [r0]
cmp r2, 0
- bge _0802F31C
- bl ResetUnusedInputStruct
- ldr r0, _0802F350
- ldr r0, [r0]
- adds r0, 0x24
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
-_0802F348:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802F350: .4byte gUnknown_203B310
-_0802F354: .4byte gUnknown_80E041C
- thumb_func_end sub_802F300
-
- thumb_func_start HandleMissionReward
-HandleMissionReward:
- push {r4-r6,lr}
- sub sp, 0x10
- ldr r1, _0802F374
- ldr r0, [r1]
- ldr r0, [r0]
- adds r6, r1, 0
- cmp r0, 0x9
- bls _0802F36A
- b _0802F6E4
-_0802F36A:
- lsls r0, 2
- ldr r1, _0802F378
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802F374: .4byte gUnknown_203B310
-_0802F378: .4byte _0802F37C
- .align 2, 0
-_0802F37C:
- .4byte _0802F3A4
- .4byte _0802F3E8
- .4byte _0802F444
- .4byte _0802F494
- .4byte _0802F524
- .4byte _0802F5CC
- .4byte _0802F614
- .4byte _0802F630
- .4byte _0802F6A4
- .4byte _0802F6E4
-_0802F3A4:
- ldr r2, [r6]
- ldr r0, [r2, 0x10]
- ldr r1, [r0, 0x18]
- cmp r1, 0
- bne _0802F3B6
- movs r0, 0x2
- bl sub_802F2E8
- b _0802F6E4
-_0802F3B6:
- ldr r0, _0802F3D4
- str r1, [r0]
- ldrb r0, [r2, 0x8]
- cmp r0, 0
- beq _0802F3E0
- ldr r0, _0802F3D8
- adds r2, 0x14
- ldr r3, _0802F3DC
- movs r1, 0
- bl sub_80141B4
- ldr r1, [r6]
- movs r0, 0x1
- str r0, [r1, 0x4]
- b _0802F6E4
- .align 2, 0
-_0802F3D4: .4byte gUnknown_202DE30
-_0802F3D8: .4byte gUnknown_80E0434
-_0802F3DC: .4byte 0x0000010d
-_0802F3E0:
- movs r0, 0x1
- bl sub_802F2E8
- b _0802F6E4
-_0802F3E8:
- movs r0, 0xCB
- bl sub_8011988
- ldr r0, _0802F414
- ldr r0, [r0]
- ldr r0, [r0, 0x10]
- ldr r0, [r0, 0x18]
- bl sub_80913A0
- movs r0, 0
- bl sub_808D544
- cmp r0, 0x1
- bgt _0802F420
- ldr r0, _0802F418
- ldr r3, _0802F41C
- movs r1, 0
- movs r2, 0
- bl sub_80141B4
- b _0802F42C
- .align 2, 0
-_0802F414: .4byte gUnknown_203B310
-_0802F418: .4byte gUnknown_80E045C
-_0802F41C: .4byte 0x00000101
-_0802F420:
- ldr r0, _0802F438
- ldr r3, _0802F43C
+ beq _08028816
+ cmp r2, 0x2
+ beq _08028824
+ b _08028AF2
+_08028816:
+ ldr r0, _0802881C
+ ldr r3, _08028820
+ b _0802882A
+ .align 2, 0
+_0802881C: .4byte gUnknown_80DE178
+_08028820: .4byte gUnknown_80DDB24
+_08028824:
+ ldr r0, _08028848
+ ldr r3, _0802884C
+ movs r2, 0
+_0802882A:
+ str r2, [sp]
+ movs r1, 0x4
+ str r1, [sp, 0x4]
+ str r2, [sp, 0x8]
+ movs r2, 0x84
+ lsls r2, 3
+ adds r1, r4, r2
+ str r1, [sp, 0xC]
+ movs r1, 0xC
+ str r1, [sp, 0x10]
movs r1, 0
- movs r2, 0
- bl sub_80141B4
-_0802F42C:
- ldr r0, _0802F440
- ldr r1, [r0]
- movs r0, 0x2
- str r0, [r1, 0x4]
- b _0802F6E4
+ movs r2, 0xD
+ bl sub_8014248
+ b _08028AF2
.align 2, 0
-_0802F438: .4byte gUnknown_80E0484
-_0802F43C: .4byte 0x00000101
-_0802F440: .4byte gUnknown_203B310
-_0802F444:
- ldr r0, [r6]
- ldr r0, [r0, 0x10]
- adds r1, r0, 0
- adds r1, 0x20
- ldrb r0, [r1]
- cmp r0, 0
- bne _0802F45A
- movs r0, 0x4
- bl sub_802F2E8
- b _0802F6E4
-_0802F45A:
- ldr r0, _0802F480
- ldrb r1, [r1]
- movs r2, 0
- bl sub_8092578
+_08028848: .4byte gUnknown_80DE1B4
+_0802884C: .4byte gUnknown_80DDB24
+_08028850:
+ ldr r0, _0802885C
ldr r2, [r6]
- ldrb r0, [r2, 0x8]
- cmp r0, 0
- beq _0802F48C
- ldr r0, _0802F484
- adds r2, 0x14
- ldr r3, _0802F488
- movs r1, 0
- bl sub_80141B4
- ldr r1, [r6]
- movs r0, 0x3
- str r0, [r1, 0x4]
- b _0802F6E4
- .align 2, 0
-_0802F480: .4byte gUnknown_202E628
-_0802F484: .4byte gUnknown_80E04B4
-_0802F488: .4byte 0x0000010d
-_0802F48C:
- movs r0, 0x3
- bl sub_802F2E8
- b _0802F6E4
-_0802F494:
- ldr r4, _0802F4B4
- ldr r0, [r4]
- ldr r0, [r0, 0x10]
- adds r0, 0x20
- ldrb r0, [r0]
- bl GetFriendAreaStatus
- lsls r0, 24
- cmp r0, 0
- beq _0802F4BC
- movs r0, 0xFA
- lsls r0, 2
- bl sub_80913A0
- ldr r0, _0802F4B8
- b _0802F4DA
- .align 2, 0
-_0802F4B4: .4byte gUnknown_203B310
-_0802F4B8: .4byte gUnknown_80E04F4
-_0802F4BC:
- movs r0, 0
- bl sub_808D544
- cmp r0, 0x1
- bgt _0802F4F0
- ldr r0, [r4]
- ldr r0, [r0, 0x10]
- adds r0, 0x20
- ldrb r0, [r0]
- bl UnlockFriendArea
- movs r0, 0xCE
- bl sub_8011988
- ldr r0, _0802F4E8
-_0802F4DA:
- ldr r3, _0802F4EC
- movs r1, 0
- movs r2, 0
- bl sub_80141B4
- b _0802F50E
- .align 2, 0
-_0802F4E8: .4byte gUnknown_80E05C0
-_0802F4EC: .4byte 0x00000101
-_0802F4F0:
- ldr r0, [r4]
- ldr r0, [r0, 0x10]
- adds r0, 0x20
- ldrb r0, [r0]
- bl UnlockFriendArea
- movs r0, 0xCE
- bl sub_8011988
- ldr r0, _0802F518
- ldr r3, _0802F51C
- movs r1, 0
- movs r2, 0
- bl sub_80141B4
-_0802F50E:
- ldr r0, _0802F520
- ldr r1, [r0]
- movs r0, 0x4
- str r0, [r1, 0x4]
- b _0802F6E4
- .align 2, 0
-_0802F518: .4byte gUnknown_80E05FC
-_0802F51C: .4byte 0x00000101
-_0802F520: .4byte gUnknown_203B310
-_0802F524:
- ldr r0, [r6]
- ldr r0, [r0, 0x10]
- ldrb r2, [r0, 0x1C]
- cmp r2, 0
- beq _0802F628
- ldr r0, [r0, 0x18]
- cmp r0, 0
- bne _0802F620
- lsls r2, 16
- ldr r1, _0802F564
- ldr r0, [sp, 0xC]
- ands r0, r1
- orrs r0, r2
- str r0, [sp, 0xC]
- lsrs r0, 16
- lsls r0, 24
- lsrs r0, 24
- bl sub_8090A60
- lsls r0, 24
- cmp r0, 0
- beq _0802F56C
- ldr r0, [r6]
- ldr r0, [r0, 0x10]
- ldrb r1, [r0, 0x1F]
- lsls r1, 8
- ldr r2, _0802F568
- ldr r0, [sp, 0xC]
- ands r0, r2
- orrs r0, r1
- b _0802F572
- .align 2, 0
-_0802F564: .4byte 0xff00ffff
-_0802F568: .4byte 0xffff00ff
-_0802F56C:
- ldr r1, _0802F5B4
- ldr r0, [sp, 0xC]
- ands r0, r1
-_0802F572:
- str r0, [sp, 0xC]
- ldr r1, _0802F5B8
- ldr r0, [sp, 0xC]
- ands r0, r1
- movs r2, 0x1
- orrs r0, r2
- str r0, [sp, 0xC]
- movs r1, 0
- str r1, [sp]
- mov r0, sp
- strb r1, [r0, 0x4]
- strb r2, [r0, 0x8]
- ldr r0, _0802F5BC
- add r1, sp, 0xC
- mov r2, sp
- bl sub_8090E14
- ldr r4, _0802F5C0
- ldr r2, [r4]
- ldrb r0, [r2, 0x8]
- cmp r0, 0
- beq _0802F620
- ldr r0, _0802F5C4
- adds r2, 0x14
- ldr r3, _0802F5C8
- movs r1, 0
- bl sub_80141B4
- ldr r1, [r4]
- movs r0, 0x5
- str r0, [r1, 0x4]
- b _0802F6E4
- .align 2, 0
-_0802F5B4: .4byte 0xffff00ff
-_0802F5B8: .4byte 0xffffff00
-_0802F5BC: .4byte gUnknown_202DEA8
-_0802F5C0: .4byte gUnknown_203B310
-_0802F5C4: .4byte gUnknown_80E0640
-_0802F5C8: .4byte 0x0000010d
-_0802F5CC:
- ldr r0, [r6]
- ldr r2, [r0, 0x10]
- adds r1, r2, 0
- adds r1, 0x1C
- ldr r3, [r0, 0xC]
- adds r1, r3
- ldrb r0, [r1]
- cmp r0, 0
- bne _0802F5E6
- movs r0, 0x6
- bl sub_802F2E8
- b _0802F6E4
-_0802F5E6:
- cmp r3, 0
- bne _0802F5FC
- ldr r0, [r2, 0x18]
- cmp r0, 0
- bne _0802F5FC
- ldrb r1, [r2, 0x1C]
- ldrb r2, [r2, 0x1F]
- movs r0, 0
- bl sub_801B60C
- b _0802F6E4
-_0802F5FC:
- ldr r1, [r6]
- ldr r2, [r1, 0x10]
- adds r0, r2, 0
- adds r0, 0x1C
- ldr r1, [r1, 0xC]
- adds r0, r1
- ldrb r1, [r0]
- ldrb r2, [r2, 0x1F]
- movs r0, 0x1
- bl sub_801B60C
- b _0802F6E4
-_0802F614:
- ldr r1, [r6]
- ldr r0, [r1, 0xC]
- adds r0, 0x1
- str r0, [r1, 0xC]
- cmp r0, 0x2
- bgt _0802F628
-_0802F620:
- movs r0, 0x5
- bl sub_802F2E8
- b _0802F6E4
-_0802F628:
- movs r0, 0x7
- bl sub_802F2E8
- b _0802F6E4
-_0802F630:
- adds r5, r6, 0
- ldr r0, [r5]
- ldr r0, [r0, 0x10]
- ldr r0, [r0, 0x24]
- cmp r0, 0
- bne _0802F644
- movs r0, 0x9
- bl sub_802F2E8
- b _0802F6E4
-_0802F644:
- bl GetRescueTeamRank
- ldr r1, [r5]
- strb r0, [r1, 0x9]
- ldr r0, [r5]
- ldr r0, [r0, 0x10]
- ldr r0, [r0, 0x24]
- bl AddToTeamRankPts
- movs r0, 0xCB
- bl sub_8011988
- ldr r4, [r5]
- bl GetRescueTeamRank
- ldrb r1, [r4, 0x9]
- lsls r0, 24
- lsrs r0, 24
- cmp r1, r0
- beq _0802F672
- ldr r1, [r5]
- movs r0, 0x8
- b _0802F676
-_0802F672:
- ldr r1, [r6]
- movs r0, 0x9
-_0802F676:
- str r0, [r1, 0x4]
- ldr r1, _0802F694
- ldr r0, _0802F698
- ldr r0, [r0]
- ldr r0, [r0, 0x10]
- ldr r0, [r0, 0x24]
- str r0, [r1]
- ldr r0, _0802F69C
- ldr r3, _0802F6A0
- movs r1, 0
- movs r2, 0
- bl sub_80141B4
- b _0802F6E4
- .align 2, 0
-_0802F694: .4byte gUnknown_202DE30
-_0802F698: .4byte gUnknown_203B310
-_0802F69C: .4byte gUnknown_80E0670
-_0802F6A0: .4byte 0x00000101
-_0802F6A4:
- movs r0, 0xC9
- bl sub_8011988
- ldr r0, _0802F6EC
- ldr r1, [r0]
- movs r0, 0x9
- str r0, [r1, 0x4]
- ldrb r0, [r1, 0x9]
- bl GetTeamRankString
- adds r1, r0, 0
- ldr r4, _0802F6F0
- adds r0, r4, 0
- bl strcpy
- bl GetRescueTeamRank
- lsls r0, 24
- lsrs r0, 24
- bl GetTeamRankString
- adds r1, r0, 0
- adds r4, 0x50
- adds r0, r4, 0
- bl strcpy
- ldr r0, _0802F6F4
- ldr r3, _0802F6F8
- movs r1, 0
- movs r2, 0
- bl sub_80141B4
-_0802F6E4:
- add sp, 0x10
- pop {r4-r6}
- pop {r0}
- bx r0
+ movs r3, 0x84
+ lsls r3, 3
+ adds r2, r3
+ b _08028A72
.align 2, 0
-_0802F6EC: .4byte gUnknown_203B310
-_0802F6F0: .4byte gUnknown_202E038
-_0802F6F4: .4byte gUnknown_80E06A8
-_0802F6F8: .4byte 0x00000101
- thumb_func_end HandleMissionReward
-
- thumb_func_start sub_802F6FC
-sub_802F6FC:
- push {lr}
- bl sub_801B6AC
- cmp r0, 0x1
- bls _0802F714
- cmp r0, 0x3
- bhi _0802F714
- bl sub_801B72C
- movs r0, 0x6
- bl sub_802F2E8
-_0802F714:
- pop {r0}
- bx r0
- thumb_func_end sub_802F6FC
-
- thumb_func_start sub_802F718
-sub_802F718:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0802F730
- ldr r0, _0802F738
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- bl sub_802F2E8
-_0802F730:
- add sp, 0x4
- pop {r0}
- bx r0
+_0802885C: .4byte gUnknown_80DE1E4
+_08028860:
+ ldr r0, _08028864
+ b _08028A6A
.align 2, 0
-_0802F738: .4byte gUnknown_203B310
- thumb_func_end sub_802F718
-
- thumb_func_start sub_802F73C
-sub_802F73C:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r5, r0, 0
- adds r7, r1, 0
- mov r8, r2
- lsls r3, 24
- lsrs r6, r3, 24
- bl sub_802FCF0
- lsls r0, 24
- cmp r0, 0
- beq _0802F75A
- movs r0, 0
- b _0802F836
-_0802F75A:
- ldr r4, _0802F7AC
- ldr r0, [r4]
- cmp r0, 0
- bne _0802F76E
- movs r0, 0xAE
- lsls r0, 1
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
-_0802F76E:
- ldr r0, [r4]
- adds r0, 0xB8
- strb r6, [r0]
- ldr r0, [r4]
- adds r1, r0, 0
- adds r1, 0xF0
- str r5, [r1]
- adds r2, r0, 0
- adds r2, 0xF4
- lsls r1, r5, 1
- adds r1, r5
+_08028864: .4byte gUnknown_80DE280
+_08028868:
+ ldr r0, _08028874
+ ldr r2, [r6]
+ movs r1, 0x84
lsls r1, 3
- adds r1, 0xF8
- adds r1, r0, r1
- str r1, [r2]
- adds r0, 0xF8
- bl sub_8006518
- cmp r6, 0
- beq _0802F7B4
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0xF0
- ldr r2, [r0]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0xF8
- ldr r0, _0802F7B0
- b _0802F7C8
- .align 2, 0
-_0802F7AC: .4byte gUnknown_203B314
-_0802F7B0: .4byte gUnknown_80E072C
-_0802F7B4:
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0xF0
- ldr r2, [r0]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0xF8
- ldr r0, _0802F840
-_0802F7C8:
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldr r4, _0802F844
- ldr r2, [r4]
- adds r0, r2, 0
- adds r0, 0xF4
- ldr r1, [r0]
- movs r3, 0xAC
- lsls r3, 1
- adds r0, r2, r3
- str r0, [r1, 0x14]
- cmp r7, 0
- beq _0802F7FC
- adds r0, r2, 0
- adds r0, 0xF0
- ldr r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- subs r3, 0x58
- adds r1, r2, r3
- adds r1, r0
- ldr r0, [r7]
- str r0, [r1]
-_0802F7FC:
- ldr r0, [r4]
- adds r0, 0xF4
- ldr r0, [r0]
- mov r1, r8
- bl sub_8012D08
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0xF8
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r4, [r4]
- adds r4, 0xBC
- bl sub_802FBF4
- adds r1, r0, 0
- adds r0, r4, 0
- mov r2, r8
- adds r3, r5, 0
- bl sub_8013818
- bl sub_802F9C0
- bl sub_802FA50
- movs r0, 0x1
-_0802F836:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
+ adds r2, r1
+ b _08028A72
.align 2, 0
-_0802F840: .4byte gUnknown_80E0714
-_0802F844: .4byte gUnknown_203B314
- thumb_func_end sub_802F73C
-
- thumb_func_start sub_802F848
-sub_802F848:
- push {r4,r5,lr}
- lsls r0, 16
- asrs r4, r0, 16
- movs r3, 0
- ldr r1, _0802F858
- ldr r0, [r1]
- b _0802F884
+_08028874: .4byte gUnknown_80DE2B0
+_08028878:
+ ldr r0, _08028884
+ ldr r2, [r6]
+ movs r3, 0x84
+ lsls r3, 3
+ adds r2, r3
+ b _08028A72
.align 2, 0
-_0802F858: .4byte gUnknown_203B314
-_0802F85C:
- ldr r2, [r1]
- lsls r0, r3, 1
- adds r0, r2, r0
- movs r5, 0
- ldrsh r0, [r0, r5]
- cmp r0, r4
- bne _0802F880
- adds r0, r2, 0
- adds r0, 0xBC
- adds r1, r3, 0
- bl sub_8013878
- bl sub_802F9C0
- bl sub_802FA50
- movs r0, 0x1
- b _0802F89A
-_0802F880:
- adds r3, 0x1
- adds r0, r2, 0
-_0802F884:
- adds r0, 0xDE
- movs r2, 0
- ldrsh r0, [r0, r2]
- cmp r3, r0
- blt _0802F85C
- ldr r0, [r1]
- adds r0, 0xBC
- movs r1, 0
- bl sub_8013878
- movs r0, 0
-_0802F89A:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_802F848
-
- thumb_func_start sub_802F8A0
-sub_802F8A0:
- push {r4,lr}
- lsls r0, 24
- cmp r0, 0
- bne _0802F8BC
- ldr r0, _0802F8B8
- ldr r0, [r0]
- adds r0, 0xBC
- bl sub_8013660
- movs r0, 0
- b _0802F904
+_08028884: .4byte gUnknown_80DE368
+_08028888:
+ ldr r0, _0802888C
+ b _08028A1A
.align 2, 0
-_0802F8B8: .4byte gUnknown_203B314
-_0802F8BC:
- ldr r4, _0802F8D8
- ldr r0, [r4]
- adds r0, 0xBC
- bl GetKeyPress
- cmp r0, 0x1
- beq _0802F8DC
- cmp r0, 0x2
- bne _0802F8E6
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _0802F904
+_0802888C: .4byte gUnknown_80DDDBC
+_08028890:
+ ldr r0, _0802889C
+ ldr r2, [r6]
+ movs r1, 0x84
+ lsls r1, 3
+ adds r2, r1
+ b _08028A72
.align 2, 0
-_0802F8D8: .4byte gUnknown_203B314
-_0802F8DC:
- movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _0802F904
-_0802F8E6:
- ldr r0, [r4]
- adds r0, 0xBC
- movs r1, 0x1
- bl sub_80138B8
- lsls r0, 24
+_0802889C: .4byte gUnknown_80DE430
+_080288A0:
+ bl sub_8030894
cmp r0, 0
- bne _0802F8FA
- movs r0, 0
- b _0802F904
-_0802F8FA:
- bl sub_802F9C0
- bl sub_802FA50
- movs r0, 0x1
-_0802F904:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_802F8A0
-
- thumb_func_start sub_802F90C
-sub_802F90C:
- ldr r0, _0802F934
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0xDA
- movs r3, 0
- ldrsh r1, [r0, r3]
- subs r0, 0x2
- movs r3, 0
- ldrsh r0, [r0, r3]
- muls r0, r1
- adds r1, r2, 0
- adds r1, 0xD4
- movs r3, 0
- ldrsh r1, [r1, r3]
- adds r0, r1
- lsls r0, 1
- adds r0, r2, r0
- movs r1, 0
- ldrsh r0, [r0, r1]
- bx lr
- .align 2, 0
-_0802F934: .4byte gUnknown_203B314
- thumb_func_end sub_802F90C
-
- thumb_func_start sub_802F938
-sub_802F938:
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_802FBF4
- adds r1, r0, 0
- ldr r5, _0802F970
- ldr r0, [r5]
- adds r2, r0, 0
- adds r2, 0xDE
- strh r1, [r2]
- adds r0, 0xBC
- bl sub_8013984
- bl sub_802F9C0
- bl sub_802FA50
- cmp r4, 0
- beq _0802F96A
- ldr r0, [r5]
- adds r0, 0xBC
- bl AddMenuCursorSprite
-_0802F96A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802F970: .4byte gUnknown_203B314
- thumb_func_end sub_802F938
-
- thumb_func_start sub_802F974
-sub_802F974:
- push {r4,r5,lr}
- ldr r4, _0802F9B8
- ldr r2, [r4]
- cmp r2, 0
- beq _0802F9B2
- adds r0, r2, 0
- adds r0, 0xF0
- ldr r0, [r0]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0xF8
- ldr r0, _0802F9BC
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
+ beq _080288AA
+ b _08028AF2
+_080288AA:
bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0xF8
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
movs r0, 0
- str r0, [r4]
-_0802F9B2:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802F9B8: .4byte gUnknown_203B314
-_0802F9BC: .4byte gUnknown_80E06FC
- thumb_func_end sub_802F974
-
- thumb_func_start sub_802F9C0
-sub_802F9C0:
- push {r4,r5,lr}
- ldr r4, _0802FA44
- ldr r0, [r4]
- movs r1, 0xAC
- lsls r1, 1
- adds r0, r1
- movs r2, 0
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, [r4]
- ldr r3, _0802FA48
- adds r0, r3
- strb r2, [r0]
- ldr r0, [r4]
- adds r3, 0x1
- adds r1, r0, r3
- movs r0, 0x8
- strb r0, [r1]
- ldr r0, [r4]
- ldr r1, _0802FA4C
- adds r0, r1
- strb r2, [r0]
- ldr r0, [r4]
- adds r0, 0xD6
- movs r2, 0
- ldrsh r0, [r0, r2]
- movs r1, 0xC
- bl sub_80095E4
- adds r0, 0x2
- lsls r0, 16
- ldr r3, [r4]
- adds r5, r3, 0
- adds r5, 0xF0
- ldr r2, [r5]
- lsls r1, r2, 1
- adds r1, r2
- lsls r1, 3
- adds r1, r3, r1
- movs r2, 0x83
- lsls r2, 1
- adds r1, r2
- asrs r2, r0, 16
- lsrs r0, 16
- strh r0, [r1]
- ldr r1, [r5]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r3, r0
- adds r2, 0x2
- movs r0, 0x84
- lsls r0, 1
- adds r3, r0
- strh r2, [r3]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0xF8
movs r1, 0x1
movs r2, 0x1
bl sub_800641C
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0802FA44: .4byte gUnknown_203B314
-_0802FA48: .4byte 0x00000159
-_0802FA4C: .4byte 0x0000015b
- thumb_func_end sub_802F9C0
-
- thumb_func_start sub_802FA50
-sub_802FA50:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- ldr r4, _0802FB1C
- ldr r0, [r4]
- adds r0, 0xF0
- ldr r0, [r0]
- bl sub_8008C54
- ldr r0, [r4]
- adds r0, 0xF0
- ldr r0, [r0]
- bl sub_80073B8
- ldr r2, _0802FB20
- ldr r0, [r4]
- adds r0, 0xF0
- ldr r3, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0xA
- movs r1, 0
- bl xxx_call_draw_string
- ldr r3, [r4]
- movs r1, 0xAD
- lsls r1, 1
- adds r0, r3, r1
- ldrb r0, [r0]
- lsls r0, 3
- adds r0, 0x4
- adds r1, r3, 0
- adds r1, 0xDA
- movs r5, 0
- ldrsh r2, [r1, r5]
- adds r2, 0x1
- movs r1, 0x7
- str r1, [sp]
- adds r1, r3, 0
- adds r1, 0xF0
- ldr r1, [r1]
- str r1, [sp, 0x4]
- movs r1, 0
- movs r3, 0x2
- bl sub_8012BC4
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0xB8
- ldrb r0, [r0]
- cmp r0, 0
- beq _0802FB78
- movs r6, 0
- adds r0, r1, 0
- adds r0, 0xD6
+ movs r0, 0x2
+_080288BA:
movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r6, r0
- blt _0802FACA
- b _0802FBD6
-_0802FACA:
- mov r8, r4
-_0802FACC:
- mov r2, r8
- ldr r0, [r2]
- adds r0, 0xBC
- adds r1, r6, 0
- bl sub_8013800
- adds r5, r0, 0
- mov r3, r8
- ldr r2, [r3]
- adds r0, r2, 0
- adds r0, 0xDA
- movs r3, 0
- ldrsh r1, [r0, r3]
- subs r0, 0x2
- movs r3, 0
- ldrsh r0, [r0, r3]
- muls r0, r1
- adds r1, r0, r6
- lsls r0, r1, 1
- adds r0, r2, r0
- movs r3, 0
- ldrsh r7, [r0, r3]
- adds r0, r2, 0
- adds r0, 0x5C
- adds r0, r1
- ldrb r4, [r0]
- cmp r4, 0
- beq _0802FB28
- adds r0, r2, 0
- adds r0, 0xF0
- ldr r3, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0xA
- adds r1, r5, 0
- ldr r2, _0802FB24
- bl xxx_call_draw_string
- b _0802FB46
- .align 2, 0
-_0802FB1C: .4byte gUnknown_203B314
-_0802FB20: .4byte gUnknown_80E0744
-_0802FB24: .4byte gUnknown_80E0750
-_0802FB28:
- adds r0, r2, 0
- adds r0, 0x8A
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _0802FB46
- adds r0, r2, 0
- adds r0, 0xF0
- ldr r3, [r0]
- str r4, [sp]
- movs r0, 0xA
- adds r1, r5, 0
- ldr r2, _0802FB74
- bl xxx_call_draw_string
-_0802FB46:
- adds r0, r7, 0
- bl sub_80974A0
- adds r2, r0, 0
- mov r1, r8
- ldr r0, [r1]
- adds r0, 0xF0
- ldr r3, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x18
- adds r1, r5, 0
- bl xxx_call_draw_string
- adds r6, 0x1
- mov r2, r8
- ldr r0, [r2]
- adds r0, 0xD6
- movs r3, 0
- ldrsh r0, [r0, r3]
- cmp r6, r0
- blt _0802FACC
- b _0802FBD6
- .align 2, 0
-_0802FB74: .4byte gUnknown_80E0754
-_0802FB78:
- movs r6, 0
- adds r0, r1, 0
- adds r0, 0xD6
- movs r5, 0
- ldrsh r0, [r0, r5]
- cmp r6, r0
- bge _0802FBD6
- adds r5, r4, 0
-_0802FB88:
- ldr r0, [r5]
- adds r0, 0xBC
- adds r1, r6, 0
- bl sub_8013800
- adds r4, r0, 0
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0xDA
- movs r3, 0
- ldrsh r2, [r0, r3]
- subs r0, 0x2
- movs r3, 0
- ldrsh r0, [r0, r3]
- muls r0, r2
- adds r0, r6
- lsls r0, 1
- adds r1, r0
movs r2, 0
- ldrsh r0, [r1, r2]
- bl sub_80974A0
- adds r2, r0, 0
- ldr r0, [r5]
- adds r0, 0xF0
- ldr r3, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x8
- adds r1, r4, 0
- bl xxx_call_draw_string
- adds r6, 0x1
- ldr r0, [r5]
- adds r0, 0xD6
- movs r3, 0
- ldrsh r0, [r0, r3]
- cmp r6, r0
- blt _0802FB88
-_0802FBD6:
- ldr r0, _0802FBF0
- ldr r0, [r0]
- adds r0, 0xF0
- ldr r0, [r0]
- bl sub_80073E0
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802FBF0: .4byte gUnknown_203B314
- thumb_func_end sub_802FA50
-
- thumb_func_start sub_802FBF4
-sub_802FBF4:
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r0, 0
- mov r8, r0
- movs r1, 0
- str r1, [sp]
-_0802FC08:
- ldr r1, [sp]
- lsls r0, r1, 16
- asrs r4, r0, 16
- mov r10, r4
- adds r0, r4, 0
- bl sub_80A27CC
- lsls r0, 24
- cmp r0, 0
- beq _0802FCCE
- cmp r4, 0x13
- beq _0802FCCE
- cmp r4, 0x1D
- beq _0802FCCE
- ldr r7, _0802FC88
- ldr r1, [r7]
- mov r0, r8
- lsls r6, r0, 1
- adds r0, r1, r6
- strh r4, [r0]
- adds r1, 0x5C
- add r1, r8
- movs r0, 0
- strb r0, [r1]
- ldr r0, [r7]
- adds r0, 0x8A
- add r0, r8
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r7]
- adds r0, 0xB8
- ldrb r0, [r0]
- cmp r0, 0
- beq _0802FCCA
- cmp r4, 0xD
- beq _0802FCCA
- adds r0, r4, 0
- bl sub_80A270C
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- movs r5, 0
- cmp r4, 0x1E
- bgt _0802FCA8
- adds r0, r4, 0
- bl sub_8097384
- lsls r0, 24
- cmp r0, 0
- bne _0802FCA6
- cmp r4, 0x6
- bne _0802FC8C
- movs r0, 0x13
- bl sub_8097384
- lsls r0, 24
- cmp r0, 0
- beq _0802FCA8
- ldr r0, [r7]
- adds r0, r6
- movs r1, 0x13
- b _0802FCA4
- .align 2, 0
-_0802FC88: .4byte gUnknown_203B314
-_0802FC8C:
- mov r0, r10
- cmp r0, 0xA
- bne _0802FCA8
- movs r0, 0x1D
- bl sub_8097384
- lsls r0, 24
- cmp r0, 0
- beq _0802FCA8
- ldr r0, [r7]
- adds r0, r6
- movs r1, 0x1D
-_0802FCA4:
- strh r1, [r0]
-_0802FCA6:
- movs r5, 0x1
-_0802FCA8:
- ldr r4, _0802FCEC
- ldr r0, [r4]
- adds r0, 0x5C
- add r0, r8
- strb r5, [r0]
- cmp r5, 0
- bne _0802FCCA
- mov r0, r9
- bl sub_80969D0
- cmp r0, 0
- ble _0802FCCA
- ldr r0, [r4]
- adds r0, 0x8A
- add r0, r8
- movs r1, 0x1
- strb r1, [r0]
-_0802FCCA:
- movs r1, 0x1
- add r8, r1
-_0802FCCE:
- ldr r0, [sp]
- adds r0, 0x1
- str r0, [sp]
- cmp r0, 0x2D
- ble _0802FC08
- mov r0, r8
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0802FCEC: .4byte gUnknown_203B314
- thumb_func_end sub_802FBF4
-
- thumb_func_start sub_802FCF0
-sub_802FCF0:
- push {r4,lr}
- movs r4, 0
-_0802FCF4:
- lsls r0, r4, 16
- asrs r0, 16
- bl sub_80A27CC
- lsls r0, 24
- cmp r0, 0
- beq _0802FD06
- movs r0, 0
- b _0802FD0E
-_0802FD06:
- adds r4, 0x1
- cmp r4, 0x2D
- ble _0802FCF4
- movs r0, 0x1
-_0802FD0E:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_802FCF0
-
- thumb_func_start sub_802FD14
-sub_802FD14:
- push {r4-r6,lr}
- adds r5, r0, 0
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
+ movs r3, 0x6
+ bl sub_80306A8
+ b _08028AF2
+_080288C6:
+ ldr r0, [r6]
+ movs r4, 0xD7
+ lsls r4, 2
+ adds r0, r4
+ bl sub_8006518
+ ldr r1, [r6]
+ movs r5, 0x87
+ lsls r5, 2
+ adds r0, r1, r5
+ adds r1, r4
+ ldr r3, _08028904
+ ldr r2, _08028908
+ str r2, [sp]
movs r2, 0x1
- bl sub_800641C
- ldr r4, _0802FD48
- movs r0, 0xCC
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
- ldr r1, _0802FD4C
- strh r1, [r0, 0x10]
- str r5, [r0]
- cmp r5, 0x7
- bhi _0802FDC0
- lsls r0, r5, 2
- ldr r1, _0802FD50
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802FD48: .4byte gUnknown_203B318
-_0802FD4C: .4byte 0x0000ffff
-_0802FD50: .4byte _0802FD54
- .align 2, 0
-_0802FD54:
- .4byte _0802FD74
- .4byte _0802FD84
- .4byte _0802FD94
- .4byte _0802FDA4
- .4byte _0802FDB4
- .4byte _0802FDB8
- .4byte _0802FDBC
- .4byte _0802FDC0
-_0802FD74:
- movs r6, 0
- ldr r1, _0802FD80
- ldr r0, [r1]
- str r6, [r0, 0x4]
- b _0802FDCC
- .align 2, 0
-_0802FD80: .4byte gUnknown_203B318
-_0802FD84:
- movs r6, 0x7
- ldr r2, _0802FD90
- ldr r1, [r2]
- movs r0, 0
- b _0802FDC8
- .align 2, 0
-_0802FD90: .4byte gUnknown_203B318
-_0802FD94:
- movs r6, 0x6
- ldr r2, _0802FDA0
- ldr r1, [r2]
- movs r0, 0
- b _0802FDC8
- .align 2, 0
-_0802FDA0: .4byte gUnknown_203B318
-_0802FDA4:
- movs r6, 0x8
- ldr r2, _0802FDB0
- ldr r1, [r2]
- movs r0, 0
- b _0802FDC8
- .align 2, 0
-_0802FDB0: .4byte gUnknown_203B318
-_0802FDB4:
- movs r6, 0
- b _0802FDC2
-_0802FDB8:
- movs r6, 0x7
- b _0802FDC2
-_0802FDBC:
- movs r6, 0x6
- b _0802FDC2
-_0802FDC0:
- movs r6, 0x8
-_0802FDC2:
- ldr r2, _0802FDD8
- ldr r1, [r2]
- movs r0, 0x1
-_0802FDC8:
- str r0, [r1, 0x4]
- adds r1, r2, 0
-_0802FDCC:
- ldr r1, [r1]
- ldr r0, [r1, 0x4]
- cmp r0, 0x1
- bne _0802FDDC
- movs r0, 0
- b _0802FDE0
- .align 2, 0
-_0802FDD8: .4byte gUnknown_203B318
-_0802FDDC:
- adds r0, r1, 0
- adds r0, 0x58
-_0802FDE0:
- str r0, [r1, 0x68]
- ldr r0, _0802FE48
- ldr r5, _0802FE4C
- adds r1, r5, 0
- bl sub_808D8E0
- ldr r4, _0802FE50
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_808D8E0
- adds r0, r5, 0
- bl GetMonSpecies
- adds r1, r0, 0
- subs r4, 0x50
- adds r0, r4, 0
- bl strcpy
- adds r0, r5, 0
- bl GetDialogueSpriteDataPtr
- ldr r3, _0802FE54
- ldr r1, [r3]
- str r0, [r1, 0x58]
- ldr r0, [r0, 0x4]
- str r0, [r1, 0x5C]
- adds r1, 0x64
+ str r2, [sp, 0x4]
movs r2, 0
- strb r2, [r1]
- ldr r0, [r3]
- adds r0, 0x65
- strb r2, [r0]
- ldr r0, [r3]
- adds r0, 0x66
- strb r2, [r0]
- ldr r1, [r3]
- adds r2, r1, 0
- adds r2, 0x60
- movs r0, 0x2
- strh r0, [r2]
- adds r1, 0x62
- movs r0, 0x8
- strh r0, [r1]
- adds r0, r6, 0
- bl sub_802FF04
- movs r0, 0x1
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0802FE48: .4byte gUnknown_202E5D8
-_0802FE4C: .4byte 0x00000141
-_0802FE50: .4byte gUnknown_202E1C8
-_0802FE54: .4byte gUnknown_203B318
- thumb_func_end sub_802FD14
-
- thumb_func_start sub_802FE58
-sub_802FE58:
- push {lr}
- ldr r0, _0802FE70
- ldr r0, [r0]
- ldr r0, [r0, 0x8]
- cmp r0, 0xD
- bhi _0802FEC6
- lsls r0, 2
- ldr r1, _0802FE74
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802FE70: .4byte gUnknown_203B318
-_0802FE74: .4byte _0802FE78
- .align 2, 0
-_0802FE78:
- .4byte _0802FEB0
- .4byte _0802FEB0
- .4byte _0802FEC6
- .4byte _0802FEC6
- .4byte _0802FEB6
- .4byte _0802FEC6
- .4byte _0802FEC6
- .4byte _0802FEC6
- .4byte _0802FEC6
- .4byte _0802FEC6
- .4byte _0802FEC6
- .4byte _0802FEBC
- .4byte _0802FEC6
- .4byte _0802FEC2
-_0802FEB0:
- bl sub_8030208
- b _0802FECA
-_0802FEB6:
- bl sub_8030258
- b _0802FECA
-_0802FEBC:
- bl sub_80302A8
- b _0802FECA
-_0802FEC2:
- movs r0, 0x3
- b _0802FECC
-_0802FEC6:
- bl sub_80302C4
-_0802FECA:
- movs r0, 0
-_0802FECC:
- pop {r1}
- bx r1
- thumb_func_end sub_802FE58
-
- thumb_func_start sub_802FED0
-sub_802FED0:
- ldr r0, _0802FEDC
- ldr r0, [r0]
- movs r1, 0x10
- ldrsh r0, [r0, r1]
- bx lr
- .align 2, 0
-_0802FEDC: .4byte gUnknown_203B318
- thumb_func_end sub_802FED0
-
- thumb_func_start sub_802FEE0
-sub_802FEE0:
- push {r4,lr}
- ldr r4, _0802FF00
- ldr r0, [r4]
- cmp r0, 0
- beq _0802FEFA
- ldr r0, [r0, 0x58]
- bl CloseFile
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0802FEFA:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0802FF00: .4byte gUnknown_203B318
- thumb_func_end sub_802FEE0
-
- thumb_func_start sub_802FF04
-sub_802FF04:
- push {lr}
- ldr r1, _0802FF18
- ldr r1, [r1]
- str r0, [r1, 0x8]
- bl sub_802FF1C
- bl sub_802FF88
- pop {r0}
- bx r0
- .align 2, 0
-_0802FF18: .4byte gUnknown_203B318
- thumb_func_end sub_802FF04
-
- thumb_func_start sub_802FF1C
-sub_802FF1C:
- push {r4-r7,lr}
- ldr r4, _0802FF3C
- ldr r0, [r4]
- adds r0, 0x6C
- bl sub_8006518
- ldr r0, [r4]
- ldr r0, [r0, 0x8]
- cmp r0, 0x4
- beq _0802FF44
- cmp r0, 0x4
- bgt _0802FF40
- cmp r0, 0
- beq _0802FF44
- b _0802FF68
- .align 2, 0
-_0802FF3C: .4byte gUnknown_203B318
-_0802FF40:
- cmp r0, 0xD
- bne _0802FF68
-_0802FF44:
- ldr r0, _0802FF80
- mov r12, r0
- ldr r4, _0802FF84
- movs r3, 0
+ str r2, [sp, 0x8]
+ str r2, [sp, 0xC]
movs r2, 0x3
-_0802FF4E:
- mov r5, r12
- ldr r1, [r5]
- adds r1, r3
- adds r1, 0x6C
- adds r0, r4, 0
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- adds r3, 0x18
- subs r2, 0x1
- cmp r2, 0
- bge _0802FF4E
-_0802FF68:
- bl ResetUnusedInputStruct
- ldr r0, _0802FF80
- ldr r0, [r0]
- adds r0, 0x6C
- movs r1, 0x1
+ bl SetMenuItems
+ bl sub_803092C
+_080288F6:
+ ldr r0, [r6]
+ adds r0, r5
+ movs r1, 0x3
movs r2, 0x1
- bl sub_800641C
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0802FF80: .4byte gUnknown_203B318
-_0802FF84: .4byte gUnknown_80E0760
- thumb_func_end sub_802FF1C
-
- thumb_func_start sub_802FF88
-sub_802FF88:
- push {r4,r5,lr}
- sub sp, 0x18
- ldr r1, _0802FFA4
- ldr r0, [r1]
- ldr r0, [r0, 0x8]
- adds r5, r1, 0
- cmp r0, 0xD
- bls _0802FF9A
- b _080301A0
-_0802FF9A:
- lsls r0, 2
- ldr r1, _0802FFA8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0802FFA4: .4byte gUnknown_203B318
-_0802FFA8: .4byte _0802FFAC
+ bl sub_8035CF4
+ b _08028AF2
.align 2, 0
-_0802FFAC:
- .4byte _0802FFE4
- .4byte _08030000
- .4byte _08030038
- .4byte _08030050
- .4byte _08030068
- .4byte _08030074
- .4byte _080300DC
- .4byte _080300C4
- .4byte _080300F4
- .4byte _0803010C
- .4byte _08030148
- .4byte _08030174
- .4byte _08030180
- .4byte _080301A0
-_0802FFE4:
- bl sub_80301B0
- ldr r2, _0802FFF8
- ldr r0, _0802FFFC
- ldr r5, [r0]
- ldr r1, [r5, 0x4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- b _0803000E
+_08028904: .4byte gUnknown_80DDACC
+_08028908: .4byte gUnknown_80DDAFC
+_0802890C:
+ bl sub_8095350
+ ldr r1, _0802893C
+ ldr r1, [r1]
+ movs r3, 0xA8
+ lsls r3, 3
+ adds r2, r1, r3
+ str r0, [r2]
+ movs r4, 0xA7
+ lsls r4, 3
+ adds r1, r4
+ ldr r1, [r1]
+ cmp r1, 0x6
+ beq _08028940
+ cmp r1, 0x6
+ bls _0802892E
+ b _08028AF2
+_0802892E:
+ cmp r1, 0x5
+ beq _08028934
+ b _08028AF2
+_08028934:
+ movs r0, 0x2
+ bl sub_8030F58
+ b _08028AF2
.align 2, 0
-_0802FFF8: .4byte gMakuhitaDialogue
-_0802FFFC: .4byte gUnknown_203B318
-_08030000:
- ldr r2, _08030034
- ldr r5, [r5]
- ldr r1, [r5, 0x4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r2, 0x4
-_0803000E:
- adds r0, r2
- ldr r0, [r0]
- ldr r2, [r5, 0x14]
- adds r3, r5, 0
- adds r3, 0x18
- movs r4, 0
- str r4, [sp]
+_0802893C: .4byte gUnknown_203B2C0
+_08028940:
+ movs r0, 0x4
+ bl sub_8030F58
+ b _08028AF2
+_08028948:
+ ldr r0, _08028970
+ ldr r3, _08028974
+ movs r2, 0
+ str r2, [sp]
movs r1, 0x4
str r1, [sp, 0x4]
- str r4, [sp, 0x8]
- ldr r1, [r5, 0x68]
+ str r2, [sp, 0x8]
+ ldr r1, [r6]
+ movs r2, 0x84
+ lsls r2, 3
+ adds r1, r2
str r1, [sp, 0xC]
movs r1, 0xC
str r1, [sp, 0x10]
movs r1, 0
+ movs r2, 0x5
bl sub_8014248
- b _080301A0
- .align 2, 0
-_08030034: .4byte gMakuhitaDialogue
-_08030038:
- ldr r3, [r5]
- movs r0, 0xD
- str r0, [r3, 0xC]
- ldr r2, _0803004C
- ldr r1, [r3, 0x4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r2, 0x8
- b _0803015A
- .align 2, 0
-_0803004C: .4byte gMakuhitaDialogue
-_08030050:
- ldr r3, [r5]
- movs r0, 0x4
- str r0, [r3, 0xC]
- ldr r2, _08030064
- ldr r1, [r3, 0x4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r2, 0xC
- b _0803015A
- .align 2, 0
-_08030064: .4byte gMakuhitaDialogue
-_08030068:
- movs r0, 0x3
- movs r1, 0
- movs r2, 0xA
- bl sub_80302E8
- b _080301A0
-_08030074:
- ldr r1, [r5]
- movs r0, 0xD
- str r0, [r1, 0xC]
- movs r2, 0x10
- ldrsh r0, [r1, r2]
- bl sub_80A2740
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080300B4
- ldr r1, [sp, 0x14]
- ands r1, r2
- orrs r1, r0
- ldr r0, _080300B8
- ands r1, r0
- movs r0, 0x80
- lsls r0, 1
- orrs r1, r0
- str r1, [sp, 0x14]
- ldr r0, _080300BC
- add r1, sp, 0x14
- bl sub_8090208
- ldr r2, _080300C0
- ldr r3, [r5]
- ldr r1, [r3, 0x4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r2, 0x10
- b _0803015A
- .align 2, 0
-_080300B4: .4byte 0xffffff00
-_080300B8: .4byte 0xffff00ff
-_080300BC: .4byte gAvailablePokemonNames
-_080300C0: .4byte gMakuhitaDialogue
-_080300C4:
- ldr r3, [r5]
- movs r0, 0xD
- str r0, [r3, 0xC]
- ldr r2, _080300D8
- ldr r1, [r3, 0x4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r2, 0x18
- b _0803015A
- .align 2, 0
-_080300D8: .4byte gMakuhitaDialogue
-_080300DC:
- ldr r3, [r5]
- movs r0, 0xD
- str r0, [r3, 0xC]
- ldr r2, _080300F0
- ldr r1, [r3, 0x4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r2, 0x14
- b _0803015A
- .align 2, 0
-_080300F0: .4byte gMakuhitaDialogue
-_080300F4:
- ldr r3, [r5]
- movs r0, 0x9
- str r0, [r3, 0xC]
- ldr r2, _08030108
- ldr r1, [r3, 0x4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r2, 0x1C
- b _0803015A
- .align 2, 0
-_08030108: .4byte gMakuhitaDialogue
-_0803010C:
- ldr r4, _08030138
- bl sub_808D33C
- adds r1, r0, 0
- adds r0, r4, 0
- movs r2, 0x6
- bl sub_808D9AC
- ldr r0, _0803013C
- ldr r1, [r0]
- movs r0, 0xB
- str r0, [r1, 0xC]
- movs r0, 0xCB
- bl sub_8011988
- ldr r0, _08030140
- ldr r3, _08030144
- movs r1, 0
- movs r2, 0
- bl sub_80141B4
- b _080301A0
- .align 2, 0
-_08030138: .4byte gPlayerName
-_0803013C: .4byte gUnknown_203B318
-_08030140: .4byte gUnknown_80E0778
-_08030144: .4byte 0x00000101
-_08030148:
- ldr r3, [r5]
- movs r0, 0xD
- str r0, [r3, 0xC]
- ldr r2, _0803016C
- ldr r1, [r3, 0x4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r2, 0x20
-_0803015A:
- adds r0, r2
- ldr r0, [r0]
- ldr r2, [r3, 0x68]
- ldr r3, _08030170
- movs r1, 0
- bl sub_80141B4
- b _080301A0
- .align 2, 0
-_0803016C: .4byte gMakuhitaDialogue
-_08030170: .4byte 0x0000010d
-_08030174:
- movs r0, 0x1
- movs r1, 0x49
- movs r2, 0x1
- bl sub_801B60C
- b _080301A0
-_08030180:
- ldr r3, [r5]
- movs r0, 0x1
- str r0, [r3, 0xC]
- ldr r2, _080301A8
- ldr r1, [r3, 0x4]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r2, 0x24
- adds r0, r2
- ldr r0, [r0]
- ldr r2, [r3, 0x68]
- ldr r3, _080301AC
- movs r1, 0
- bl sub_80141B4
-_080301A0:
- add sp, 0x18
- pop {r4,r5}
- pop {r0}
- bx r0
+ b _08028AF2
.align 2, 0
-_080301A8: .4byte gMakuhitaDialogue
-_080301AC: .4byte 0x0000010d
- thumb_func_end sub_802FF88
-
- thumb_func_start sub_80301B0
-sub_80301B0:
- push {r4,lr}
- ldr r4, _080301F8
- ldr r1, [r4]
- movs r2, 0x2
- str r2, [r1, 0x14]
- ldr r0, _080301FC
- str r0, [r1, 0x18]
- str r2, [r1, 0x1C]
- bl sub_80306A4
- lsls r0, 24
- cmp r0, 0
- beq _080301D6
- ldr r0, [r4]
- movs r1, 0x1
- negs r1, r1
- str r1, [r0, 0x1C]
- movs r1, 0x1
- str r1, [r0, 0x14]
-_080301D6:
- ldr r1, [r4]
- movs r2, 0x1
- ldr r0, _08030200
- ldr r0, [r0]
- str r0, [r1, 0x20]
- movs r0, 0x3
- str r0, [r1, 0x24]
- ldr r0, _08030204
- ldr r0, [r0]
- str r0, [r1, 0x28]
- str r2, [r1, 0x2C]
- movs r0, 0
- str r0, [r1, 0x30]
- str r2, [r1, 0x34]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080301F8: .4byte gUnknown_203B318
-_080301FC: .4byte gUnknown_80E07D8
-_08030200: .4byte gUnknown_80D4970
-_08030204: .4byte gUnknown_80D4934
- thumb_func_end sub_80301B0
-
- thumb_func_start sub_8030208
-sub_8030208:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _08030250
- ldr r0, _08030230
- ldr r1, [r0]
- ldr r0, [sp]
- str r0, [r1, 0x14]
- ldr r0, [sp]
- cmp r0, 0x2
- beq _0803023A
- cmp r0, 0x2
- bgt _08030234
- cmp r0, 0x1
- beq _0803024A
- b _08030250
- .align 2, 0
-_08030230: .4byte gUnknown_203B318
-_08030234:
- cmp r0, 0x3
- beq _08030242
- b _08030250
-_0803023A:
- movs r0, 0x3
- bl sub_802FF04
- b _08030250
-_08030242:
- movs r0, 0xC
- bl sub_802FF04
- b _08030250
-_0803024A:
- movs r0, 0x2
- bl sub_802FF04
-_08030250:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_8030208
-
- thumb_func_start sub_8030258
-sub_8030258:
- push {lr}
- movs r0, 0x1
- bl sub_80303AC
- cmp r0, 0x2
- beq _08030288
- cmp r0, 0x2
- bcc _0803029A
- cmp r0, 0x3
- bne _0803029A
- bl sub_8030418
- ldr r1, _08030284
- ldr r1, [r1]
- strh r0, [r1, 0x10]
- bl sub_8030480
- movs r0, 0x5
- bl sub_802FF04
- b _0803029A
- .align 2, 0
-_08030284: .4byte gUnknown_203B318
-_08030288:
- bl sub_8030480
- ldr r0, _080302A0
- ldr r1, [r0]
- ldr r0, _080302A4
- strh r0, [r1, 0x10]
- movs r0, 0x1
- bl sub_802FF04
-_0803029A:
- pop {r0}
- bx r0
+_08028970: .4byte gUnknown_80DE48C
+_08028974: .4byte gUnknown_80DD9EC
+_08028978:
+ ldr r0, _08028984
+ ldr r2, [r6]
+ movs r3, 0x84
+ lsls r3, 3
+ adds r2, r3
+ b _08028A72
.align 2, 0
-_080302A0: .4byte gUnknown_203B318
-_080302A4: .4byte 0x0000ffff
- thumb_func_end sub_8030258
-
- thumb_func_start sub_80302A8
-sub_80302A8:
- push {lr}
- bl sub_801B6AC
- cmp r0, 0x1
- bls _080302C0
- cmp r0, 0x3
- bhi _080302C0
- bl sub_801B72C
- movs r0, 0xA
- bl sub_802FF04
-_080302C0:
- pop {r0}
- bx r0
- thumb_func_end sub_80302A8
-
- thumb_func_start sub_80302C4
-sub_80302C4:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _080302DC
- ldr r0, _080302E4
- ldr r0, [r0]
- ldr r0, [r0, 0xC]
- bl sub_802FF04
-_080302DC:
- add sp, 0x4
- pop {r0}
- bx r0
+_08028984: .4byte gUnknown_80DE4B8
+_08028988:
+ ldr r0, _0802898C
+ b _08028A6A
.align 2, 0
-_080302E4: .4byte gUnknown_203B318
- thumb_func_end sub_80302C4
-
- thumb_func_start sub_80302E8
-sub_80302E8:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r5, r0, 0
- adds r6, r1, 0
- mov r8, r2
- bl sub_80306A4
- lsls r0, 24
- cmp r0, 0
- beq _08030302
- movs r0, 0
- b _0803039A
-_08030302:
- ldr r4, _080303A4
- ldr r0, [r4]
- cmp r0, 0
- bne _08030314
- movs r0, 0xD0
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
-_08030314:
- ldr r0, [r4]
- str r5, [r0, 0x64]
- lsls r1, r5, 1
- adds r1, r5
+_0802898C: .4byte gUnknown_80DE4F0
+_08028990:
+ ldr r0, _0802899C
+ ldr r2, [r6]
+ movs r1, 0x84
lsls r1, 3
- adds r1, 0x6C
- adds r1, r0, r1
- str r1, [r0, 0x68]
- adds r0, 0x6C
- bl sub_8006518
- ldr r1, [r4]
- ldr r2, [r1, 0x64]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x6C
- ldr r0, _080303A8
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldr r2, [r4]
- ldr r1, [r2, 0x68]
- adds r0, r2, 0
- adds r0, 0xCC
- str r0, [r1, 0x14]
- cmp r6, 0
- beq _08030362
- ldr r1, [r2, 0x64]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r1, r2, 0
- adds r1, 0x74
- adds r1, r0
- ldr r0, [r6]
- str r0, [r1]
-_08030362:
- ldr r0, [r4]
- ldr r0, [r0, 0x68]
- mov r1, r8
- bl sub_8012D08
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x6C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r4, [r4]
- adds r4, 0x30
- bl sub_8030668
- adds r1, r0, 0
- adds r0, r4, 0
- mov r2, r8
- adds r3, r5, 0
- bl sub_8013818
- bl sub_80304C8
- bl sub_803053C
- movs r0, 0x1
-_0803039A:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080303A4: .4byte gUnknown_203B31C
-_080303A8: .4byte gUnknown_80E0804
- thumb_func_end sub_80302E8
-
- thumb_func_start sub_80303AC
-sub_80303AC:
- push {r4,lr}
- lsls r0, 24
- cmp r0, 0
- bne _080303C8
- ldr r0, _080303C4
- ldr r0, [r0]
- adds r0, 0x30
- bl sub_8013660
- movs r0, 0
- b _08030410
- .align 2, 0
-_080303C4: .4byte gUnknown_203B31C
-_080303C8:
- ldr r4, _080303E4
- ldr r0, [r4]
- adds r0, 0x30
- bl GetKeyPress
- cmp r0, 0x1
- beq _080303E8
- cmp r0, 0x2
- bne _080303F2
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _08030410
+ adds r2, r1
+ b _08028A72
.align 2, 0
-_080303E4: .4byte gUnknown_203B31C
-_080303E8:
- movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _08030410
-_080303F2:
- ldr r0, [r4]
- adds r0, 0x30
- movs r1, 0x1
- bl sub_80138B8
- lsls r0, 24
- cmp r0, 0
- bne _08030406
- movs r0, 0
- b _08030410
-_08030406:
- bl sub_80304C8
- bl sub_803053C
- movs r0, 0x1
-_08030410:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_80303AC
-
- thumb_func_start sub_8030418
-sub_8030418:
- ldr r0, _08030440
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x4E
- movs r3, 0
- ldrsh r1, [r0, r3]
- subs r0, 0x2
- movs r3, 0
- ldrsh r0, [r0, r3]
- muls r0, r1
- adds r1, r2, 0
- adds r1, 0x48
- movs r3, 0
- ldrsh r1, [r1, r3]
- adds r0, r1
- lsls r0, 1
- adds r0, r2, r0
- movs r1, 0
- ldrsh r0, [r0, r1]
- bx lr
+_0802899C: .4byte gUnknown_80DE524
+_080289A0:
+ ldr r0, _080289AC
+ ldr r2, [r6]
+ movs r3, 0x84
+ lsls r3, 3
+ adds r2, r3
+ b _08028A72
.align 2, 0
-_08030440: .4byte gUnknown_203B31C
- thumb_func_end sub_8030418
-
- thumb_func_start sub_8030444
-sub_8030444:
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8030668
- adds r1, r0, 0
- ldr r5, _0803047C
- ldr r0, [r5]
- adds r2, r0, 0
- adds r2, 0x52
- strh r1, [r2]
- adds r0, 0x30
- bl sub_8013984
- bl sub_80304C8
- bl sub_803053C
- cmp r4, 0
- beq _08030476
- ldr r0, [r5]
- adds r0, 0x30
- bl AddMenuCursorSprite
-_08030476:
- pop {r4,r5}
- pop {r0}
- bx r0
+_080289AC: .4byte gUnknown_80DE614
+_080289B0:
+ ldr r0, _080289B4
+ b _08028A6A
.align 2, 0
-_0803047C: .4byte gUnknown_203B31C
- thumb_func_end sub_8030444
-
- thumb_func_start sub_8030480
-sub_8030480:
- push {r4,r5,lr}
- ldr r4, _080304C0
- ldr r2, [r4]
- cmp r2, 0
- beq _080304BA
- ldr r0, [r2, 0x64]
- lsls r1, r0, 1
- adds r1, r0
+_080289B4: .4byte gUnknown_80DE648
+_080289B8:
+ ldr r0, _080289C4
+ ldr r2, [r6]
+ movs r1, 0x84
lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x6C
- ldr r0, _080304C4
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x6C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_080304BA:
- pop {r4,r5}
- pop {r0}
- bx r0
+ adds r2, r1
+ b _08028A72
.align 2, 0
-_080304C0: .4byte gUnknown_203B31C
-_080304C4: .4byte gUnknown_80E07EC
- thumb_func_end sub_8030480
-
- thumb_func_start sub_80304C8
-sub_80304C8:
- push {r4,lr}
- ldr r4, _08030538
- ldr r0, [r4]
- adds r0, 0xCC
+_080289C4: .4byte gUnknown_80DE694
+_080289C8:
+ ldr r0, _080289E0
+ ldr r3, _080289E4
movs r2, 0
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0xCD
- strb r2, [r0]
- ldr r0, [r4]
- adds r0, 0xCE
- movs r1, 0x8
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0xCF
- strb r2, [r0]
- ldr r0, [r4]
- adds r0, 0x4A
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r1, 0xC
- bl sub_80095E4
- adds r0, 0x2
- lsls r0, 16
- ldr r2, [r4]
- ldr r3, [r2, 0x64]
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x7A
- asrs r3, r0, 16
- lsrs r0, 16
- strh r0, [r1]
- ldr r1, [r2, 0x64]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r2, r0
- adds r3, 0x2
- adds r2, 0x7C
- strh r3, [r2]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x6C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08030538: .4byte gUnknown_203B31C
- thumb_func_end sub_80304C8
-
- thumb_func_start sub_803053C
-sub_803053C:
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x108
- ldr r4, _08030658
- ldr r0, [r4]
- ldr r0, [r0, 0x64]
- bl sub_8008C54
- ldr r0, [r4]
- ldr r0, [r0, 0x64]
- bl sub_80073B8
- ldr r2, _0803065C
- ldr r0, [r4]
- ldr r3, [r0, 0x64]
- movs r0, 0
- str r0, [sp]
- movs r0, 0xA
- movs r1, 0
- bl xxx_call_draw_string
- ldr r3, [r4]
- adds r0, r3, 0
- adds r0, 0xCE
- ldrb r0, [r0]
- lsls r0, 3
- adds r0, 0x4
- adds r1, r3, 0
- adds r1, 0x4E
- movs r5, 0
- ldrsh r2, [r1, r5]
- adds r2, 0x1
- movs r1, 0x7
- str r1, [sp]
- ldr r1, [r3, 0x64]
+ str r2, [sp]
+ movs r1, 0x4
str r1, [sp, 0x4]
- movs r1, 0
- movs r3, 0x2
- bl sub_8012BC4
- movs r0, 0
- mov r9, r0
- ldr r0, [r4]
- adds r0, 0x4A
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r9, r0
- bge _0803063E
- mov r8, r4
-_080305A2:
- mov r3, r8
- ldr r1, [r3]
- adds r0, r1, 0
- adds r0, 0x4E
- movs r5, 0
- ldrsh r2, [r0, r5]
- subs r0, 0x2
- movs r3, 0
- ldrsh r0, [r0, r3]
- muls r0, r2
- add r0, r9
- lsls r0, 1
- adds r1, r0
- movs r5, 0
- ldrsh r4, [r1, r5]
- adds r0, r4, 0
- bl sub_80A2740
- lsls r0, 24
- lsrs r7, r0, 24
- adds r0, r4, 0
- bl sub_80A2668
- adds r4, r0, 0
- lsls r4, 16
- asrs r4, 16
- mov r1, r8
- ldr r0, [r1]
- adds r0, 0x30
- mov r1, r9
- bl sub_8013800
- adds r6, r0, 0
- movs r5, 0x7
- adds r0, r4, 0
- bl sub_809758C
- lsls r0, 24
- cmp r0, 0
- beq _08030608
- mov r3, r8
- ldr r0, [r3]
- ldr r3, [r0, 0x64]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x8
- adds r1, r6, 0
- ldr r2, _08030660
- bl xxx_call_draw_string
- movs r5, 0x4
-_08030608:
- adds r0, r7, 0
- bl GetDungeonName1
- adds r3, r0, 0
- add r0, sp, 0x8
- ldr r1, _08030664
- adds r2, r5, 0
- bl sub_800D158
- mov r5, r8
- ldr r0, [r5]
- ldr r3, [r0, 0x64]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x10
- adds r1, r6, 0
- add r2, sp, 0x8
- bl xxx_call_draw_string
- movs r0, 0x1
- add r9, r0
- ldr r0, [r5]
- adds r0, 0x4A
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r9, r0
- blt _080305A2
-_0803063E:
- ldr r0, _08030658
- ldr r0, [r0]
- ldr r0, [r0, 0x64]
- bl sub_80073E0
- add sp, 0x108
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08030658: .4byte gUnknown_203B31C
-_0803065C: .4byte gUnknown_80E081C
-_08030660: .4byte gUnknown_80E0824
-_08030664: .4byte gUnknown_80E0828
- thumb_func_end sub_803053C
-
- thumb_func_start sub_8030668
-sub_8030668:
- push {r4-r6,lr}
- movs r6, 0
- movs r5, 0
-_0803066E:
- lsls r0, r5, 16
- asrs r4, r0, 16
- adds r0, r4, 0
- bl sub_8097504
- lsls r0, 24
- cmp r0, 0
- beq _08030690
- adds r0, r4, 0
- bl sub_80A26CC
- ldr r1, _080306A0
- ldr r1, [r1]
- lsls r2, r6, 1
- adds r1, r2
- strh r0, [r1]
- adds r6, 0x1
-_08030690:
- adds r5, 0x1
- cmp r5, 0x16
- ble _0803066E
- adds r0, r6, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_080306A0: .4byte gUnknown_203B31C
- thumb_func_end sub_8030668
-
- thumb_func_start sub_80306A4
-sub_80306A4:
- movs r0, 0
- bx lr
- thumb_func_end sub_80306A4
-
- thumb_func_start sub_80306A8
-sub_80306A8:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r4, r0, 0
- adds r5, r1, 0
- adds r7, r2, 0
- mov r8, r3
- bl sub_8030C20
- lsls r0, 24
- cmp r0, 0
- beq _080306C4
- movs r0, 0
- b _08030756
-_080306C4:
- ldr r6, _08030760
- movs r0, 0xC4
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r6]
- str r4, [r0, 0x20]
- str r5, [r0, 0x58]
- lsls r1, r5, 1
- adds r1, r5
- lsls r1, 3
- adds r1, 0x60
- adds r1, r0, r1
- str r1, [r0, 0x5C]
- adds r0, 0x60
- bl sub_8006518
+ str r2, [sp, 0x8]
ldr r1, [r6]
- ldr r2, [r1, 0x58]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x60
- ldr r0, _08030764
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
+ movs r2, 0x84
+ lsls r2, 3
+ adds r1, r2
+ b _08028A2E
+ .align 2, 0
+_080289E0: .4byte gUnknown_80DE6D4
+_080289E4: .4byte gUnknown_80DDA48
+_080289E8:
+ ldr r0, _080289F0
+ ldr r3, _080289F4
+ b _08028A1C
+ .align 2, 0
+_080289F0: .4byte gUnknown_80DE754
+_080289F4: .4byte gUnknown_80DDA48
+_080289F8:
+ ldr r0, _08028A04
ldr r2, [r6]
- ldr r1, [r2, 0x5C]
- adds r0, r2, 0
- adds r0, 0xC0
- str r0, [r1, 0x14]
- cmp r7, 0
- beq _0803071E
- ldr r1, [r2, 0x58]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r1, r2, 0
- adds r1, 0x68
- adds r1, r0
- ldr r0, [r7]
- str r0, [r1]
-_0803071E:
- ldr r0, [r6]
- ldr r0, [r0, 0x5C]
- mov r1, r8
- bl sub_8012D08
- bl ResetUnusedInputStruct
- ldr r0, [r6]
- adds r0, 0x60
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r4, [r6]
- adds r4, 0x24
- bl sub_8030A74
- adds r1, r0, 0
- adds r0, r4, 0
- mov r2, r8
- adds r3, r5, 0
- bl sub_8013818
- bl sub_80308A0
- bl sub_803092C
- movs r0, 0x1
-_08030756:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_08030760: .4byte gUnknown_203B320
-_08030764: .4byte gUnknown_80E0854
- thumb_func_end sub_80306A8
-
- thumb_func_start sub_8030768
-sub_8030768:
- push {lr}
- lsls r0, 24
- cmp r0, 0
- bne _08030784
- ldr r0, _08030780
- ldr r0, [r0]
- adds r0, 0x24
- bl sub_8013660
- movs r0, 0
- b _080307E6
- .align 2, 0
-_08030780: .4byte gUnknown_203B320
-_08030784:
- ldr r0, _0803079C
- ldr r0, [r0]
- adds r0, 0x24
- bl GetKeyPress
- cmp r0, 0x2
- beq _080307AE
- cmp r0, 0x2
- bgt _080307A0
- cmp r0, 0x1
- beq _080307B8
- b _080307C2
- .align 2, 0
-_0803079C: .4byte gUnknown_203B320
-_080307A0:
- cmp r0, 0x4
- bne _080307C2
- movs r0, 0x4
- bl PlayMenuSoundEffect
- movs r0, 0x4
- b _080307E6
-_080307AE:
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _080307E6
-_080307B8:
- movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _080307E6
-_080307C2:
- ldr r0, _080307D8
- ldr r0, [r0]
- adds r0, 0x24
- movs r1, 0x1
- bl sub_80138B8
- lsls r0, 24
- cmp r0, 0
- bne _080307DC
- movs r0, 0
- b _080307E6
- .align 2, 0
-_080307D8: .4byte gUnknown_203B320
-_080307DC:
- bl sub_80308A0
- bl sub_803092C
- movs r0, 0x1
-_080307E6:
- pop {r1}
- bx r1
- thumb_func_end sub_8030768
-
- thumb_func_start sub_80307EC
-sub_80307EC:
- ldr r0, _0803080C
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x42
- movs r3, 0
- ldrsh r1, [r0, r3]
- subs r0, 0x2
- movs r3, 0
- ldrsh r0, [r0, r3]
- muls r0, r1
- movs r3, 0x3C
- ldrsh r1, [r2, r3]
- adds r0, r1
- adds r2, r0
- ldrb r0, [r2]
- bx lr
- .align 2, 0
-_0803080C: .4byte gUnknown_203B320
- thumb_func_end sub_80307EC
-
- thumb_func_start sub_8030810
-sub_8030810:
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8030A74
- adds r1, r0, 0
- ldr r5, _08030848
- ldr r0, [r5]
- adds r2, r0, 0
- adds r2, 0x46
- strh r1, [r2]
- adds r0, 0x24
- bl sub_8013984
- bl sub_80308A0
- bl sub_803092C
- cmp r4, 0
- beq _08030842
- ldr r0, [r5]
- adds r0, 0x24
- bl AddMenuCursorSprite
-_08030842:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08030848: .4byte gUnknown_203B320
- thumb_func_end sub_8030810
-
- thumb_func_start sub_803084C
-sub_803084C:
- push {r4,r5,lr}
- ldr r4, _0803088C
- ldr r2, [r4]
- cmp r2, 0
- beq _08030886
- ldr r0, [r2, 0x58]
- lsls r1, r0, 1
- adds r1, r0
+ movs r1, 0x84
lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x60
- ldr r0, _08030890
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x60
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_08030886:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0803088C: .4byte gUnknown_203B320
-_08030890: .4byte gUnknown_80E083C
- thumb_func_end sub_803084C
-
- thumb_func_start sub_8030894
-sub_8030894:
- ldr r0, _0803089C
- ldr r0, [r0]
- bx lr
+ adds r2, r1
+ b _08028A72
.align 2, 0
-_0803089C: .4byte gUnknown_203B320
- thumb_func_end sub_8030894
-
- thumb_func_start sub_80308A0
-sub_80308A0:
- push {r4,lr}
- ldr r4, _08030928
- ldr r0, [r4]
- adds r1, r0, 0
- adds r1, 0x44
- ldrh r1, [r1]
- adds r0, 0xC0
- movs r2, 0
- strb r1, [r0]
- ldr r0, [r4]
- adds r1, r0, 0
- adds r1, 0x42
- ldrh r1, [r1]
- adds r0, 0xC1
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0xC2
- movs r1, 0xC
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0xC3
- strb r2, [r0]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x60
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- movs r1, 0x3E
- ldrsh r0, [r0, r1]
- movs r1, 0xC
- bl sub_80095E4
- adds r0, 0x2
- lsls r0, 16
- ldr r2, [r4]
- ldr r3, [r2, 0x58]
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x6E
- asrs r3, r0, 16
- lsrs r0, 16
- strh r0, [r1]
- ldr r1, [r2, 0x58]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r2, r0
- adds r3, 0x2
- adds r2, 0x70
- strh r3, [r2]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x60
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4}
- pop {r0}
- bx r0
+_08028A04: .4byte gUnknown_80DE7B8
+_08028A08:
+ ldr r0, _08028A14
+ ldr r2, [r6]
+ movs r3, 0x84
+ lsls r3, 3
+ adds r2, r3
+ b _08028A72
.align 2, 0
-_08030928: .4byte gUnknown_203B320
- thumb_func_end sub_80308A0
-
- thumb_func_start sub_803092C
-sub_803092C:
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x60
- ldr r7, _08030A24
- ldr r0, [r7]
- ldr r0, [r0, 0x58]
- bl sub_8008C54
- ldr r0, [r7]
- ldr r0, [r0, 0x58]
- bl sub_80073B8
- ldr r1, [r7]
- adds r0, r1, 0
- adds r0, 0x42
+_08028A14: .4byte gUnknown_80DE7E8
+_08028A18:
+ ldr r0, _08028A40
+_08028A1A:
+ ldr r3, _08028A44
+_08028A1C:
movs r2, 0
- ldrsh r4, [r0, r2]
+ str r2, [sp]
+ movs r1, 0x4
+ str r1, [sp, 0x4]
+ str r2, [sp, 0x8]
+ ldr r1, [r6]
+ movs r4, 0x84
lsls r4, 3
- adds r5, r4, 0
- adds r5, 0xA
- ldr r2, _08030A28
- ldr r0, [r1, 0x20]
- lsls r0, 2
- adds r0, r2
- ldr r2, [r0]
- ldr r3, [r1, 0x58]
- movs r0, 0
- str r0, [sp]
- adds r0, r5, 0
- movs r1, 0
- bl xxx_call_draw_string
- adds r4, 0x4
- ldr r3, [r7]
- adds r0, r3, 0
- adds r0, 0xC2
- ldrb r0, [r0]
- lsls r0, 3
- adds r5, r4, r0
- adds r0, r3, 0
- adds r0, 0x42
- movs r1, 0
- ldrsh r2, [r0, r1]
- adds r2, 0x1
- movs r0, 0x7
- str r0, [sp]
- ldr r0, [r3, 0x58]
- str r0, [sp, 0x4]
- adds r0, r5, 0
- movs r1, 0
- movs r3, 0x1
- bl sub_8012BC4
- movs r6, 0
- ldr r0, [r7]
- movs r2, 0x3E
- ldrsh r0, [r0, r2]
- cmp r6, r0
- bge _08030A56
- mov r9, r7
- mov r8, r6
- add r7, sp, 0x8
- mov r5, sp
- adds r5, 0x4B
-_080309B0:
- mov r3, r9
- ldr r1, [r3]
- adds r0, r1, 0
- adds r0, 0x42
- movs r3, 0
- ldrsh r2, [r0, r3]
- subs r0, 0x2
- movs r3, 0
- ldrsh r0, [r0, r3]
- muls r0, r2
- adds r0, r6
- adds r1, r0
- ldrb r0, [r1]
- bl sub_8095228
- adds r4, r0, 0
- mov r1, r9
- ldr r0, [r1]
- ldr r1, [r0, 0x58]
- str r1, [sp, 0x8]
- adds r0, 0x24
- adds r1, r6, 0
- bl sub_8013800
- str r0, [sp, 0x50]
- add r1, sp, 0x48
- movs r0, 0x7
- strb r0, [r1]
- mov r0, sp
- adds r0, 0x4A
- mov r2, r8
- strb r2, [r0]
- add r0, sp, 0x4C
- strb r2, [r0]
- adds r0, r4, 0x4
- str r0, [sp, 0x10]
- adds r0, 0x10
- str r0, [sp, 0x14]
- ldrh r0, [r4, 0xC]
- strh r0, [r7, 0x10]
- ldrh r0, [r4, 0xC]
- strh r0, [r7, 0x12]
- strb r2, [r7, 0x14]
- subs r1, 0x12
- movs r0, 0x5
- strb r0, [r1]
- ldrb r0, [r4]
- cmp r0, 0x4
- beq _08030A32
- cmp r0, 0x4
- bgt _08030A2C
- cmp r0, 0x2
- bgt _08030A3E
- cmp r0, 0x1
- blt _08030A3E
- movs r0, 0x1
- strb r0, [r5]
- b _08030A42
- .align 2, 0
-_08030A24: .4byte gUnknown_203B320
-_08030A28: .4byte gUnknown_80E086C
-_08030A2C:
- cmp r0, 0x5
- beq _08030A38
- b _08030A3E
-_08030A32:
- movs r0, 0x3
- strb r0, [r5]
- b _08030A42
-_08030A38:
- movs r0, 0x4
- strb r0, [r5]
- b _08030A42
-_08030A3E:
- mov r3, r8
- strb r3, [r5]
-_08030A42:
- add r0, sp, 0x8
- bl sub_803B6D4
- adds r6, 0x1
- mov r1, r9
- ldr r0, [r1]
- movs r2, 0x3E
- ldrsh r0, [r0, r2]
- cmp r6, r0
- blt _080309B0
-_08030A56:
- ldr r0, _08030A70
- ldr r0, [r0]
- ldr r0, [r0, 0x58]
- bl sub_80073E0
- add sp, 0x60
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08030A70: .4byte gUnknown_203B320
- thumb_func_end sub_803092C
-
- thumb_func_start sub_8030A74
-sub_8030A74:
- push {r4,r5,lr}
- movs r2, 0
- ldr r0, _08030A90
- ldr r0, [r0]
- ldr r0, [r0, 0x20]
- cmp r0, 0x7
- bls _08030A84
- b _08030C0E
-_08030A84:
- lsls r0, 2
- ldr r1, _08030A94
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08030A90: .4byte gUnknown_203B320
-_08030A94: .4byte _08030A98
- .align 2, 0
-_08030A98:
- .4byte _08030AB8
- .4byte _08030B10
- .4byte _08030B3C
- .4byte _08030B94
- .4byte _08030B68
- .4byte _08030BC0
- .4byte _08030AE4
- .4byte _08030BEC
-_08030AB8:
- movs r1, 0
- ldr r5, _08030ADC
- ldr r4, _08030AE0
- movs r3, 0
-_08030AC0:
- ldr r0, [r5]
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0
- beq _08030AD2
- ldr r0, [r4]
- adds r0, r2
- strb r1, [r0]
- adds r2, 0x1
-_08030AD2:
- adds r3, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030AC0
- b _08030C0E
- .align 2, 0
-_08030ADC: .4byte gUnknown_203B480
-_08030AE0: .4byte gUnknown_203B320
-_08030AE4:
- movs r1, 0
- ldr r5, _08030B08
- ldr r4, _08030B0C
- movs r3, 0
-_08030AEC:
- ldr r0, [r5]
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0x6
- bne _08030AFE
- ldr r0, [r4]
- adds r0, r2
- strb r1, [r0]
- adds r2, 0x1
-_08030AFE:
- adds r3, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030AEC
- b _08030C0E
- .align 2, 0
-_08030B08: .4byte gUnknown_203B480
-_08030B0C: .4byte gUnknown_203B320
-_08030B10:
- movs r1, 0
- ldr r5, _08030B34
- ldr r4, _08030B38
- movs r3, 0
-_08030B18:
- ldr r0, [r5]
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _08030B2A
- ldr r0, [r4]
- adds r0, r2
- strb r1, [r0]
- adds r2, 0x1
-_08030B2A:
- adds r3, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030B18
- b _08030C0E
- .align 2, 0
-_08030B34: .4byte gUnknown_203B480
-_08030B38: .4byte gUnknown_203B320
-_08030B3C:
- movs r1, 0
- ldr r5, _08030B60
- ldr r4, _08030B64
- movs r3, 0
-_08030B44:
- ldr r0, [r5]
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _08030B56
- ldr r0, [r4]
- adds r0, r2
- strb r1, [r0]
- adds r2, 0x1
-_08030B56:
- adds r3, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030B44
- b _08030C0E
- .align 2, 0
-_08030B60: .4byte gUnknown_203B480
-_08030B64: .4byte gUnknown_203B320
-_08030B68:
- movs r1, 0
- ldr r5, _08030B8C
- ldr r4, _08030B90
- movs r3, 0
-_08030B70:
- ldr r0, [r5]
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0x4
- bne _08030B82
- ldr r0, [r4]
- adds r0, r2
- strb r1, [r0]
- adds r2, 0x1
-_08030B82:
- adds r3, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030B70
- b _08030C0E
- .align 2, 0
-_08030B8C: .4byte gUnknown_203B480
-_08030B90: .4byte gUnknown_203B320
-_08030B94:
- movs r1, 0
- ldr r5, _08030BB8
- ldr r4, _08030BBC
- movs r3, 0
-_08030B9C:
- ldr r0, [r5]
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0x3
- bne _08030BAE
- ldr r0, [r4]
- adds r0, r2
- strb r1, [r0]
- adds r2, 0x1
-_08030BAE:
- adds r3, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030B9C
- b _08030C0E
- .align 2, 0
-_08030BB8: .4byte gUnknown_203B480
-_08030BBC: .4byte gUnknown_203B320
-_08030BC0:
- movs r1, 0
- ldr r5, _08030BE4
- ldr r4, _08030BE8
- movs r3, 0
-_08030BC8:
- ldr r0, [r5]
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0x5
- bne _08030BDA
- ldr r0, [r4]
- adds r0, r2
- strb r1, [r0]
- adds r2, 0x1
-_08030BDA:
- adds r3, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030BC8
- b _08030C0E
- .align 2, 0
-_08030BE4: .4byte gUnknown_203B480
-_08030BE8: .4byte gUnknown_203B320
-_08030BEC:
- movs r1, 0
- ldr r5, _08030C18
- ldr r4, _08030C1C
- movs r3, 0
-_08030BF4:
- ldr r0, [r5]
- adds r0, r3
- ldrb r0, [r0]
- cmp r0, 0x7
- bne _08030C06
- ldr r0, [r4]
- adds r0, r2
- strb r1, [r0]
- adds r2, 0x1
-_08030C06:
- adds r3, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030BF4
-_08030C0E:
- adds r0, r2, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08030C18: .4byte gUnknown_203B480
-_08030C1C: .4byte gUnknown_203B320
- thumb_func_end sub_8030A74
-
- thumb_func_start sub_8030C20
-sub_8030C20:
- push {lr}
- cmp r0, 0x7
- bls _08030C28
- b _08030D34
-_08030C28:
- lsls r0, 2
- ldr r1, _08030C34
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08030C34: .4byte _08030C38
- .align 2, 0
-_08030C38:
- .4byte _08030C58
- .4byte _08030C90
- .4byte _08030CAC
- .4byte _08030CE4
- .4byte _08030CC8
- .4byte _08030D00
- .4byte _08030C74
- .4byte _08030D20
-_08030C58:
- movs r1, 0
- ldr r0, _08030C70
- ldr r2, [r0]
-_08030C5E:
- ldrb r0, [r2]
- cmp r0, 0
- bne _08030D1C
- adds r2, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030C5E
- b _08030D34
- .align 2, 0
-_08030C70: .4byte gUnknown_203B480
-_08030C74:
- movs r1, 0
- ldr r0, _08030C8C
- ldr r2, [r0]
-_08030C7A:
- ldrb r0, [r2]
- cmp r0, 0x6
- beq _08030D1C
- adds r2, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030C7A
- b _08030D34
- .align 2, 0
-_08030C8C: .4byte gUnknown_203B480
-_08030C90:
- movs r1, 0
- ldr r0, _08030CA8
- ldr r2, [r0]
-_08030C96:
- ldrb r0, [r2]
- cmp r0, 0x1
- beq _08030D1C
- adds r2, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030C96
- b _08030D34
- .align 2, 0
-_08030CA8: .4byte gUnknown_203B480
-_08030CAC:
- movs r1, 0
- ldr r0, _08030CC4
- ldr r2, [r0]
-_08030CB2:
- ldrb r0, [r2]
- cmp r0, 0x2
- beq _08030D1C
- adds r2, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030CB2
- b _08030D34
- .align 2, 0
-_08030CC4: .4byte gUnknown_203B480
-_08030CC8:
- movs r1, 0
- ldr r0, _08030CE0
- ldr r2, [r0]
-_08030CCE:
- ldrb r0, [r2]
- cmp r0, 0x4
- beq _08030D1C
- adds r2, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030CCE
- b _08030D34
- .align 2, 0
-_08030CE0: .4byte gUnknown_203B480
-_08030CE4:
- movs r1, 0
- ldr r0, _08030CFC
- ldr r2, [r0]
-_08030CEA:
- ldrb r0, [r2]
- cmp r0, 0x3
- beq _08030D1C
- adds r2, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030CEA
- b _08030D34
- .align 2, 0
-_08030CFC: .4byte gUnknown_203B480
-_08030D00:
- movs r1, 0
- ldr r0, _08030D18
- ldr r2, [r0]
-_08030D06:
- ldrb r0, [r2]
- cmp r0, 0x5
- beq _08030D1C
- adds r2, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030D06
- b _08030D34
- .align 2, 0
-_08030D18: .4byte gUnknown_203B480
-_08030D1C:
- movs r0, 0
- b _08030D36
-_08030D20:
+ adds r1, r4
+_08028A2E:
+ str r1, [sp, 0xC]
+ movs r1, 0xC
+ str r1, [sp, 0x10]
movs r1, 0
- ldr r0, _08030D3C
- ldr r2, [r0]
-_08030D26:
- ldrb r0, [r2]
- cmp r0, 0x7
- beq _08030D1C
- adds r2, 0x30
- adds r1, 0x1
- cmp r1, 0x1F
- ble _08030D26
-_08030D34:
- movs r0, 0x1
-_08030D36:
- pop {r1}
- bx r1
- .align 2, 0
-_08030D3C: .4byte gUnknown_203B480
- thumb_func_end sub_8030C20
-
- thumb_func_start sub_8030D40
-sub_8030D40:
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r6, _08030D98
- movs r0, 0x78
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r6]
- strb r4, [r0, 0xC]
- ldr r0, [r6]
- bl sub_801317C
- ldr r0, [r6]
- str r5, [r0, 0x10]
- lsls r1, r5, 1
- adds r1, r5
- lsls r1, 3
- adds r1, 0x18
- adds r1, r0, r1
- str r1, [r0, 0x14]
- adds r0, 0x18
- bl sub_8006518
- ldr r1, [r6]
- ldr r2, [r1, 0x10]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x18
- ldr r0, _08030D9C
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- bl sub_8030DD4
- movs r0, 0x1
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08030D98: .4byte gUnknown_203B324
-_08030D9C: .4byte gUnknown_80E091C
- thumb_func_end sub_8030D40
-
- thumb_func_start sub_8030DA0
-sub_8030DA0:
- push {lr}
- ldr r0, _08030DC0
- ldr r0, [r0]
- ldr r1, [r0, 0x10]
- bl sub_8012A64
- cmp r0, 0x1
- beq _08030DC4
- cmp r0, 0x2
- bne _08030DCE
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _08030DD0
+ movs r2, 0x8
+ bl sub_8014248
+ b _08028AF2
.align 2, 0
-_08030DC0: .4byte gUnknown_203B324
-_08030DC4:
- movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _08030DD0
-_08030DCE:
- movs r0, 0
-_08030DD0:
- pop {r1}
- bx r1
- thumb_func_end sub_8030DA0
-
- thumb_func_start sub_8030DD4
-sub_8030DD4:
- push {lr}
- bl sub_8030E2C
- bl sub_8030E48
- pop {r0}
- bx r0
- thumb_func_end sub_8030DD4
-
- thumb_func_start sub_8030DE4
-sub_8030DE4:
- push {r4,r5,lr}
- ldr r4, _08030E24
- ldr r2, [r4]
- cmp r2, 0
- beq _08030E1E
- ldr r0, [r2, 0x10]
- lsls r1, r0, 1
- adds r1, r0
+_08028A40: .4byte gUnknown_80DE808
+_08028A44: .4byte gUnknown_80DDA64
+_08028A48:
+ ldr r0, _08028A54
+ ldr r2, [r6]
+ movs r1, 0x84
lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x18
- ldr r0, _08030E28
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x18
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_08030E1E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08030E24: .4byte gUnknown_203B324
-_08030E28: .4byte gUnknown_80E0900
- thumb_func_end sub_8030DE4
-
- thumb_func_start sub_8030E2C
-sub_8030E2C:
- push {lr}
- bl ResetUnusedInputStruct
- ldr r0, _08030E44
- ldr r0, [r0]
- adds r0, 0x18
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r0}
- bx r0
- .align 2, 0
-_08030E44: .4byte gUnknown_203B324
- thumb_func_end sub_8030E2C
-
- thumb_func_start sub_8030E48
-sub_8030E48:
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x15C
- ldr r3, _08030EA8
- ldr r4, _08030EAC
- ldr r2, [r4]
- ldrb r1, [r2, 0xC]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 4
- ldr r1, [r3]
- adds r5, r1, r0
- ldr r0, [r2, 0x10]
- bl sub_80073B8
- ldr r0, [r4]
- ldr r0, [r0, 0x10]
- str r0, [sp, 0x4]
- add r1, sp, 0x44
- movs r2, 0
- movs r0, 0x7
- strb r0, [r1]
- mov r0, sp
- adds r0, 0x46
- strb r2, [r0]
- add r0, sp, 0x48
- strb r2, [r0]
- adds r0, r5, 0x4
- str r0, [sp, 0xC]
- adds r0, 0x10
- str r0, [sp, 0x10]
- add r1, sp, 0x4
- ldrh r0, [r5, 0xC]
- strh r0, [r1, 0x10]
- ldrh r0, [r5, 0xC]
- strh r0, [r1, 0x12]
- adds r0, r1, 0
- strb r2, [r0, 0x14]
- adds r2, r5, 0
- adds r2, 0x22
- ldrb r0, [r2]
- cmp r0, 0
- bne _08030EB0
- adds r1, 0x2E
- movs r0, 0x5
- strb r0, [r1]
- b _08030EBE
+ adds r2, r1
+ b _08028A72
.align 2, 0
-_08030EA8: .4byte gUnknown_203B480
-_08030EAC: .4byte gUnknown_203B324
-_08030EB0:
- mov r1, sp
- adds r1, 0x32
- movs r0, 0x2
- strb r0, [r1]
- ldrb r1, [r2]
- add r0, sp, 0x38
- strb r1, [r0]
-_08030EBE:
- ldrb r0, [r5]
- cmp r0, 0x2
- beq _08030ED2
- cmp r0, 0x2
- ble _08030EE2
- cmp r0, 0x4
- beq _08030ED2
- cmp r0, 0x5
- beq _08030EDA
- b _08030EE2
-_08030ED2:
- mov r1, sp
- adds r1, 0x45
- movs r0, 0xA
- b _08030EE8
-_08030EDA:
- mov r1, sp
- adds r1, 0x45
- movs r0, 0xB
- b _08030EE8
-_08030EE2:
- mov r1, sp
- adds r1, 0x45
- movs r0, 0x9
-_08030EE8:
- strb r0, [r1]
- add r0, sp, 0x4
- bl CreateRescueDescription
- ldrh r0, [r5, 0x10]
- ldr r1, _08030F48
- bl __umodsi3
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r2, _08030F4C
- ldr r5, _08030F50
- ldr r0, [r5]
- ldr r3, [r0, 0x10]
- movs r0, 0
- mov r8, r0
- str r0, [sp]
- movs r0, 0xA
- movs r1, 0x68
- bl xxx_call_draw_string
- add r6, sp, 0x5C
- ldr r1, _08030F54
- adds r0, r6, 0
- adds r2, r4, 0
- bl sub_800D158
- ldr r0, [r5]
- ldr r3, [r0, 0x10]
- mov r0, r8
- str r0, [sp]
- movs r0, 0x44
- movs r1, 0x68
- adds r2, r6, 0
- bl xxx_call_draw_string
- ldr r0, [r5]
- ldr r0, [r0, 0x10]
- bl sub_80073E0
- add sp, 0x15C
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
+_08028A54: .4byte gUnknown_80DE830
+_08028A58:
+ ldr r0, _08028A64
+ ldr r2, [r6]
+ movs r3, 0x84
+ lsls r3, 3
+ adds r2, r3
+ b _08028A72
.align 2, 0
-_08030F48: .4byte 0x00002710
-_08030F4C: .4byte gUnknown_80E0934
-_08030F50: .4byte gUnknown_203B324
-_08030F54: .4byte gUnknown_80E0938
- thumb_func_end sub_8030E48
-
- thumb_func_start sub_8030F58
-sub_8030F58:
- push {r4-r6,lr}
- adds r6, r0, 0
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r5, _08030FF4
- ldr r0, [r5]
- cmp r0, 0
- bne _08030F88
- movs r4, 0x8E
- lsls r4, 1
- adds r0, r4, 0
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r5]
- movs r1, 0
- adds r2, r4, 0
- bl MemoryFill8
-_08030F88:
- ldr r0, [r5]
- movs r1, 0x8C
- lsls r1, 1
- adds r0, r1
- str r6, [r0]
- movs r0, 0x98
- lsls r0, 1
- bl GetDialogueSpriteDataPtr
- ldr r2, [r5]
+_08028A64: .4byte gUnknown_80DE864
+_08028A68:
+ ldr r0, _08028A7C
+_08028A6A:
+ ldr r2, [r6]
movs r4, 0x84
- lsls r4, 1
- adds r1, r2, r4
- str r0, [r1]
- movs r3, 0x86
- lsls r3, 1
- adds r1, r2, r3
- ldr r0, [r0, 0x4]
- str r0, [r1]
- movs r0, 0x8A
- lsls r0, 1
- adds r2, r0
- movs r1, 0
- strb r1, [r2]
- ldr r0, [r5]
- ldr r2, _08030FF8
- adds r0, r2
- strb r1, [r0]
- ldr r0, [r5]
- adds r3, 0xA
- adds r0, r3
- strb r1, [r0]
- ldr r2, [r5]
- movs r0, 0x88
- lsls r0, 1
- adds r1, r2, r0
- movs r0, 0x2
- strh r0, [r1]
- subs r3, 0x4
- adds r1, r2, r3
- movs r0, 0x8
- strh r0, [r1]
- adds r0, r6, 0
- bl sub_8030C20
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _08031038
- cmp r6, 0x2
- beq _08030FFC
- cmp r6, 0x4
- beq _08031014
- b _08031022
- .align 2, 0
-_08030FF4: .4byte gUnknown_203B328
-_08030FF8: .4byte 0x00000115
-_08030FFC:
- ldr r0, _0803100C
- ldr r2, [r5]
- adds r2, r4
- ldr r3, _08031010
- movs r1, 0
- bl sub_80141B4
- b _08031022
- .align 2, 0
-_0803100C: .4byte gUnknown_80E09D8
-_08031010: .4byte 0x00000101
-_08031014:
- ldr r0, _0803102C
- ldr r2, [r5]
+ lsls r4, 3
adds r2, r4
- ldr r3, _08031030
+_08028A72:
+ ldr r3, _08028A80
movs r1, 0
bl sub_80141B4
-_08031022:
- ldr r0, _08031034
- ldr r1, [r0]
- movs r0, 0x5
- str r0, [r1]
- b _08031048
+ b _08028AF2
.align 2, 0
-_0803102C: .4byte gUnknown_80E0A0C
-_08031030: .4byte 0x00000101
-_08031034: .4byte gUnknown_203B328
-_08031038:
- ldr r0, [r5]
- str r1, [r0]
- adds r0, r6, 0
- movs r1, 0
+_08028A7C: .4byte gUnknown_80DE7E8
+_08028A80: .4byte 0x0000010d
+_08028A84:
+ ldr r0, _08028AAC
+ ldr r3, _08028AB0
movs r2, 0
- movs r3, 0x8
- bl sub_80306A8
-_08031048:
- movs r0, 0x1
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8030F58
-
- thumb_func_start sub_8031050
-sub_8031050:
- push {lr}
- ldr r1, _08031068
- ldr r0, [r1]
- ldr r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x6
- bhi _080310AC
- lsls r0, 2
- ldr r1, _0803106C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08031068: .4byte gUnknown_203B328
-_0803106C: .4byte _08031070
- .align 2, 0
-_08031070:
- .4byte _0803108C
- .4byte _08031092
- .4byte _08031098
- .4byte _08031098
- .4byte _080310A2
- .4byte _080310A8
- .4byte _080310A8
-_0803108C:
- bl sub_8031300
- b _080310AC
-_08031092:
- bl sub_803136C
- b _080310AC
-_08031098:
- ldr r0, [r2]
- ldr r0, [r0]
- bl sub_80313D8
- b _080310AC
-_080310A2:
- bl sub_8031498
- b _080310AC
-_080310A8:
- movs r0, 0x3
- b _080310AE
-_080310AC:
- movs r0, 0
-_080310AE:
- pop {r1}
- bx r1
- thumb_func_end sub_8031050
-
- thumb_func_start sub_80310B4
-sub_80310B4:
- push {r4,lr}
- bl sub_803084C
- ldr r4, _080310E0
- ldr r0, [r4]
- cmp r0, 0
- beq _080310D8
- movs r1, 0x84
- lsls r1, 1
- adds r0, r1
- ldr r0, [r0]
- bl CloseFile
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_080310D8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080310E0: .4byte gUnknown_203B328
- thumb_func_end sub_80310B4
-
- thumb_func_start sub_80310E4
-sub_80310E4:
- push {lr}
- ldr r1, _080310F8
- ldr r1, [r1]
- str r0, [r1]
- bl sub_80310FC
- bl sub_8031258
- pop {r0}
- bx r0
- .align 2, 0
-_080310F8: .4byte gUnknown_203B328
- thumb_func_end sub_80310E4
-
- thumb_func_start sub_80310FC
-sub_80310FC:
- push {r4-r6,lr}
- ldr r4, _0803111C
- ldr r0, [r4]
- adds r0, 0xA8
- bl sub_8006518
- ldr r0, [r4]
- ldr r0, [r0]
- cmp r0, 0x6
- bls _08031112
- b _0803122C
-_08031112:
- lsls r0, 2
- ldr r1, _08031120
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0803111C: .4byte gUnknown_203B328
-_08031120: .4byte _08031124
- .align 2, 0
-_08031124:
- .4byte _08031140
- .4byte _08031178
- .4byte _080311C0
- .4byte _080311C0
- .4byte _080311E8
- .4byte _0803122C
- .4byte _0803122C
-_08031140:
- ldr r3, _08031170
- ldr r1, [r3]
- ldr r2, _08031174
- adds r1, 0xC0
- adds r0, r2, 0
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldr r1, [r3]
- adds r1, 0xD8
- adds r0, r2, 0
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldr r0, [r3]
- adds r0, 0xF0
- ldm r2!, {r1,r3,r4}
- stm r0!, {r1,r3,r4}
- ldm r2!, {r1,r5,r6}
- stm r0!, {r1,r5,r6}
- b _0803123A
- .align 2, 0
-_08031170: .4byte gUnknown_203B328
-_08031174: .4byte gUnknown_80E0990
-_08031178:
- ldr r3, _080311B0
- ldr r1, [r3]
- adds r1, 0xC0
- ldr r0, _080311B4
- ldm r0!, {r2,r4,r5}
- stm r1!, {r2,r4,r5}
- ldm r0!, {r2,r4,r6}
- stm r1!, {r2,r4,r6}
- ldr r1, [r3]
- ldr r2, _080311B8
- adds r1, 0xD8
- adds r0, r2, 0
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldr r0, [r3]
- adds r0, 0xF0
- ldm r2!, {r1,r5,r6}
- stm r0!, {r1,r5,r6}
- ldm r2!, {r4-r6}
- stm r0!, {r4-r6}
- ldr r0, [r3]
- adds r0, 0xC0
- ldr r1, _080311BC
- bl sub_8012CAC
- b _0803123A
- .align 2, 0
-_080311B0: .4byte gUnknown_203B328
-_080311B4: .4byte gUnknown_80E09A8
-_080311B8: .4byte gUnknown_80E0990
-_080311BC: .4byte gUnknown_80E0968
-_080311C0:
- ldr r2, _080311DC
- ldr r1, [r2]
- adds r1, 0xD8
- ldr r0, _080311E0
- ldm r0!, {r3-r5}
- stm r1!, {r3-r5}
- ldm r0!, {r3,r4,r6}
- stm r1!, {r3,r4,r6}
- ldr r0, [r2]
- adds r0, 0xD8
- ldr r1, _080311E4
- bl sub_8012CAC
- b _0803123A
- .align 2, 0
-_080311DC: .4byte gUnknown_203B328
-_080311E0: .4byte gUnknown_80E09C0
-_080311E4: .4byte gUnknown_80E0948
-_080311E8:
- ldr r3, _08031224
- ldr r1, [r3]
- ldr r2, _08031228
- adds r1, 0xA8
- adds r0, r2, 0
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldr r1, [r3]
- adds r1, 0xC0
- adds r0, r2, 0
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldr r1, [r3]
- adds r1, 0xD8
- adds r0, r2, 0
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- ldr r0, [r3]
- adds r0, 0xF0
- ldm r2!, {r1,r5,r6}
- stm r0!, {r1,r5,r6}
- ldm r2!, {r3-r5}
- stm r0!, {r3-r5}
- b _0803123A
- .align 2, 0
-_08031224: .4byte gUnknown_203B328
-_08031228: .4byte gUnknown_80E0990
-_0803122C:
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
-_0803123A:
- bl ResetUnusedInputStruct
- ldr r0, _08031254
- ldr r0, [r0]
- adds r0, 0xA8
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08031254: .4byte gUnknown_203B328
- thumb_func_end sub_80310FC
-
- thumb_func_start sub_8031258
-sub_8031258:
- push {r4,lr}
- sub sp, 0x8
- ldr r1, _08031274
- ldr r0, [r1]
- ldr r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x6
- bhi _080312F6
- lsls r0, 2
- ldr r1, _08031278
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08031274: .4byte gUnknown_203B328
-_08031278: .4byte _0803127C
- .align 2, 0
-_0803127C:
- .4byte _08031298
- .4byte _080312A0
- .4byte _080312BC
- .4byte _080312BC
- .4byte _080312EC
- .4byte _080312F6
- .4byte _080312F6
-_08031298:
- movs r0, 0x1
- bl sub_8030810
- b _080312F6
-_080312A0:
- bl sub_803092C
- ldr r0, _080312B4
- ldr r0, [r0]
- adds r0, 0x8
- ldr r1, _080312B8
- movs r2, 0x4
str r2, [sp]
- movs r2, 0x1
- b _080312D8
- .align 2, 0
-_080312B4: .4byte gUnknown_203B328
-_080312B8: .4byte gUnknown_80E0968
-_080312BC:
- bl sub_803092C
- ldr r4, _080312E4
- ldr r0, [r4]
- adds r0, 0x8
- movs r1, 0
- bl sub_8012EA4
- ldr r0, [r4]
- adds r0, 0x58
- ldr r1, _080312E8
- movs r2, 0x3
- str r2, [sp]
- movs r2, 0x2
-_080312D8:
- str r2, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_8012D60
- b _080312F6
- .align 2, 0
-_080312E4: .4byte gUnknown_203B328
-_080312E8: .4byte gUnknown_80E0948
-_080312EC:
- ldr r0, [r2]
- ldrb r0, [r0, 0x4]
- movs r1, 0x3
- bl sub_8030D40
-_080312F6:
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8031258
-
- thumb_func_start sub_8031300
-sub_8031300:
- push {lr}
- movs r0, 0x1
- bl sub_8030768
- cmp r0, 0x4
- bhi _08031366
- lsls r0, 2
- ldr r1, _08031318
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08031318: .4byte _0803131C
- .align 2, 0
-_0803131C:
- .4byte _08031366
- .4byte _08031366
- .4byte _08031360
- .4byte _08031330
- .4byte _08031348
-_08031330:
- bl sub_80307EC
- ldr r1, _08031344
- ldr r1, [r1]
- strb r0, [r1, 0x4]
- movs r0, 0x1
- bl sub_80310E4
- b _08031366
- .align 2, 0
-_08031344: .4byte gUnknown_203B328
-_08031348:
- bl sub_80307EC
- ldr r1, _0803135C
- ldr r1, [r1]
- strb r0, [r1, 0x4]
- movs r0, 0x4
- bl sub_80310E4
- b _08031366
- .align 2, 0
-_0803135C: .4byte gUnknown_203B328
-_08031360:
- movs r0, 0x6
- bl sub_80310E4
-_08031366:
- pop {r0}
- bx r0
- thumb_func_end sub_8031300
-
- thumb_func_start sub_803136C
-sub_803136C:
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- bl sub_8030768
- ldr r4, _080313A4
- ldr r0, [r4]
- adds r0, 0x8
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _08031392
- ldr r0, [r4]
- adds r0, 0x8
- mov r1, sp
- bl sub_8013114
-_08031392:
- ldr r0, [sp]
- cmp r0, 0x4
- beq _080313C2
- cmp r0, 0x4
- bgt _080313A8
- cmp r0, 0x1
- beq _080313B2
- b _080313D0
- .align 2, 0
-_080313A4: .4byte gUnknown_203B328
-_080313A8:
- cmp r0, 0x5
- beq _080313CA
- cmp r0, 0x6
- beq _080313BA
- b _080313D0
-_080313B2:
- movs r0, 0
- bl sub_80310E4
- b _080313D0
-_080313BA:
- movs r0, 0x3
- bl sub_80310E4
- b _080313D0
-_080313C2:
- movs r0, 0x2
- bl sub_80310E4
- b _080313D0
-_080313CA:
- movs r0, 0x4
- bl sub_80310E4
-_080313D0:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_803136C
-
- thumb_func_start sub_80313D8
-sub_80313D8:
- push {r4,r5,lr}
- sub sp, 0x4
- adds r5, r0, 0
- movs r0, 0
- str r0, [sp]
- bl sub_8030768
- ldr r4, _08031418
- ldr r0, [r4]
- adds r0, 0x8
- bl sub_8012FD8
- ldr r0, [r4]
- adds r0, 0x58
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _08031408
- ldr r0, [r4]
- adds r0, 0x58
- mov r1, sp
- bl sub_8013114
-_08031408:
- ldr r0, [sp]
- cmp r0, 0x2
- beq _08031428
- cmp r0, 0x2
- bgt _0803141C
- cmp r0, 0x1
- beq _08031420
- b _0803148E
- .align 2, 0
-_08031418: .4byte gUnknown_203B328
-_0803141C:
- cmp r0, 0x3
- bne _0803148E
-_08031420:
- movs r0, 0
- bl sub_80310E4
- b _0803148E
-_08031428:
- cmp r5, 0x2
- beq _08031432
- cmp r5, 0x3
- beq _0803143C
- b _0803145A
-_08031432:
- ldr r0, [r4]
- ldrb r0, [r0, 0x4]
- bl sub_8095240
- b _0803145A
-_0803143C:
- ldr r4, _08031480
- movs r3, 0
- movs r1, 0
- movs r2, 0x1F
-_08031444:
- ldr r0, [r4]
- adds r0, r1
- strb r3, [r0]
- ldr r0, [r4]
- adds r0, r1
- adds r0, 0x22
- strb r3, [r0]
- adds r1, 0x30
- subs r2, 0x1
- cmp r2, 0
- bge _08031444
-_0803145A:
- ldr r0, _08031484
- ldr r0, [r0]
- movs r1, 0x8C
- lsls r1, 1
- adds r0, r1
- ldr r0, [r0]
- cmp r0, 0x2
- beq _0803146E
- cmp r0, 0x4
- bne _0803148E
-_0803146E:
- bl sub_8030C20
- lsls r0, 24
- cmp r0, 0
- beq _08031488
- movs r0, 0x5
- bl sub_80310E4
- b _0803148E
- .align 2, 0
-_08031480: .4byte gUnknown_203B480
-_08031484: .4byte gUnknown_203B328
-_08031488:
- movs r0, 0
- bl sub_80310E4
-_0803148E:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80313D8
-
- thumb_func_start sub_8031498
-sub_8031498:
- push {lr}
- bl sub_8030DA0
- cmp r0, 0x1
- bls _080314B0
- cmp r0, 0x3
- bhi _080314B0
- bl sub_8030DE4
- movs r0, 0
- bl sub_80310E4
-_080314B0:
- pop {r0}
- bx r0
- thumb_func_end sub_8031498
-
- thumb_func_start sub_80314B4
-sub_80314B4:
- push {r4-r6,lr}
- lsls r0, 16
- asrs r5, r0, 16
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r6, _08031534
- movs r0, 0x18
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r6]
- ldr r0, _08031538
- adds r1, r5, 0
- bl sub_808D8E0
- adds r0, r5, 0
- bl GetMonSpecies
- adds r1, r0, 0
- ldr r0, _0803153C
- bl strcpy
- ldr r0, [r6]
- movs r4, 0
- str r4, [r0, 0x8]
- str r4, [r0, 0xC]
- cmp r5, 0
- beq _0803151E
- adds r0, r5, 0
- bl GetDialogueSpriteDataPtr
- ldr r1, [r6]
- str r0, [r1, 0x8]
- strb r4, [r1, 0x14]
- ldr r0, [r6]
- strb r4, [r0, 0x15]
- ldr r0, [r6]
- strb r4, [r0, 0x16]
- ldr r1, [r6]
- movs r0, 0x2
- strh r0, [r1, 0x10]
- movs r0, 0x8
- strh r0, [r1, 0x12]
- ldr r0, [r1, 0x8]
- cmp r0, 0
- beq _0803151E
- ldr r0, [r0, 0x4]
- str r0, [r1, 0xC]
-_0803151E:
- ldr r0, _08031534
- ldr r1, [r0]
- movs r0, 0
- str r0, [r1, 0x4]
- movs r0, 0x1
- bl sub_80317C0
- movs r0, 0x1
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08031534: .4byte gUnknown_203B32C
-_08031538: .4byte gUnknown_202E5D8
-_0803153C: .4byte gAvailablePokemonNames
- thumb_func_end sub_80314B4
-
- thumb_func_start sub_8031540
-sub_8031540:
- push {lr}
- ldr r0, _08031558
- ldr r0, [r0]
- ldrb r0, [r0]
- cmp r0, 0x9
- bhi _080315BA
- lsls r0, 2
- ldr r1, _0803155C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08031558: .4byte gUnknown_203B32C
-_0803155C: .4byte _08031560
- .align 2, 0
-_08031560:
- .4byte _080315AC
- .4byte _08031588
- .4byte _08031588
- .4byte _0803158E
- .4byte _08031594
- .4byte _0803159A
- .4byte _080315A0
- .4byte _080315A6
- .4byte _080315B0
- .4byte _080315B6
-_08031588:
- bl sub_80317D8
- b _080315BA
-_0803158E:
- bl sub_8031848
- b _080315BA
-_08031594:
- bl sub_8031864
- b _080315BA
-_0803159A:
- bl sub_80318D0
- b _080315BA
-_080315A0:
- bl sub_80318EC
- b _080315BA
-_080315A6:
- bl sub_803192C
- b _080315BA
-_080315AC:
- movs r0, 0x3
- b _080315BC
-_080315B0:
- bl sub_8031948
- b _080315BA
-_080315B6:
- bl sub_8031988
-_080315BA:
- movs r0, 0
-_080315BC:
- pop {r1}
- bx r1
- thumb_func_end sub_8031540
-
- thumb_func_start sub_80315C0
-sub_80315C0:
- push {r4,lr}
- ldr r4, _080315E4
- ldr r0, [r4]
- cmp r0, 0
- beq _080315DE
- ldr r0, [r0, 0x8]
- cmp r0, 0
- beq _080315D4
- bl CloseFile
-_080315D4:
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_080315DE:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080315E4: .4byte gUnknown_203B32C
- thumb_func_end sub_80315C0
-
- thumb_func_start nullsub_39
-nullsub_39:
- bx lr
- thumb_func_end nullsub_39
-
- thumb_func_start sub_80315EC
-sub_80315EC:
- push {r4,r5,lr}
- sub sp, 0x14
- movs r5, 0
- ldr r0, _08031618
- ldr r2, [r0]
- ldr r1, [r2, 0x8]
- adds r3, r0, 0
- cmp r1, 0
- beq _08031602
- adds r5, r2, 0
- adds r5, 0x8
-_08031602:
- ldrb r0, [r2]
- subs r0, 0x1
- cmp r0, 0x8
- bls _0803160C
- b _080317B0
-_0803160C:
- lsls r0, 2
- ldr r1, _0803161C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08031618: .4byte gUnknown_203B32C
-_0803161C: .4byte _08031620
- .align 2, 0
-_08031620:
- .4byte _08031700
- .4byte _08031714
- .4byte _08031728
- .4byte _08031758
- .4byte _08031780
- .4byte _08031694
- .4byte _080316A8
- .4byte _08031644
- .4byte _08031658
-_08031644:
- ldr r0, _08031650
- ldr r1, [r3]
- ldr r2, [r1, 0x4]
- ldr r3, _08031654
- b _08031760
- .align 2, 0
-_08031650: .4byte gUnknown_80E0C4C
-_08031654: .4byte gUnknown_80E0BD4
-_08031658:
- ldr r0, [r3]
- ldr r0, [r0, 0x4]
- cmp r0, 0x10
- beq _0803167C
- cmp r0, 0x10
- bgt _0803166A
- cmp r0, 0xF
- beq _08031674
- b _080317B0
-_0803166A:
- cmp r0, 0x11
- beq _08031684
- cmp r0, 0x12
- beq _0803168C
- b _080317B0
-_08031674:
- ldr r0, _08031678
- b _08031790
- .align 2, 0
-_08031678: .4byte gUnknown_80E0C70
-_0803167C:
- ldr r0, _08031680
- b _08031790
- .align 2, 0
-_08031680: .4byte gUnknown_80E0DD0
-_08031684:
- ldr r0, _08031688
- b _08031790
- .align 2, 0
-_08031688: .4byte gUnknown_80E0ED8
-_0803168C:
- ldr r0, _08031690
- b _08031790
- .align 2, 0
-_08031690: .4byte gUnknown_80E10C8
-_08031694:
- ldr r0, _080316A0
- ldr r1, [r3]
- ldr r2, [r1, 0x4]
- ldr r3, _080316A4
- b _08031760
- .align 2, 0
-_080316A0: .4byte gUnknown_80E0C4C
-_080316A4: .4byte gUnknown_80E0B3C
-_080316A8:
- ldr r0, [r3]
- ldr r0, [r0, 0x4]
- subs r0, 0xA
- cmp r0, 0x4
- bls _080316B4
- b _080317B0
-_080316B4:
- lsls r0, 2
- ldr r1, _080316C0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080316C0: .4byte _080316C4
- .align 2, 0
-_080316C4:
- .4byte _080316D8
- .4byte _080316E0
- .4byte _080316F0
- .4byte _080316E8
- .4byte _080316F8
-_080316D8:
- ldr r0, _080316DC
- b _08031790
- .align 2, 0
-_080316DC: .4byte gUnknown_80E120C
-_080316E0:
- ldr r0, _080316E4
- b _08031790
- .align 2, 0
-_080316E4: .4byte gUnknown_80E136C
-_080316E8:
- ldr r0, _080316EC
- b _08031790
- .align 2, 0
-_080316EC: .4byte gUnknown_80E1420
-_080316F0:
- ldr r0, _080316F4
- b _08031790
- .align 2, 0
-_080316F4: .4byte gUnknown_80E157C
-_080316F8:
- ldr r0, _080316FC
- b _08031790
- .align 2, 0
-_080316FC: .4byte gUnknown_80E169C
-_08031700:
- ldr r0, _0803170C
- ldr r1, [r3]
- ldr r2, [r1, 0x4]
- ldr r3, _08031710
- b _08031760
- .align 2, 0
-_0803170C: .4byte gUnknown_80E17C8
-_08031710: .4byte gUnknown_80E0A48
-_08031714:
- ldr r0, _08031720
- ldr r1, [r3]
- ldr r2, [r1, 0x4]
- ldr r3, _08031724
- b _08031760
- .align 2, 0
-_08031720: .4byte gUnknown_80E183C
-_08031724: .4byte gUnknown_80E0A48
-_08031728:
- ldr r0, [r3]
- ldr r0, [r0, 0x4]
- cmp r0, 0x1
- beq _08031748
- cmp r0, 0x1
- bgt _0803173A
- cmp r0, 0
- beq _08031740
- b _080317B0
-_0803173A:
- cmp r0, 0x2
- beq _08031750
- b _080317B0
-_08031740:
- ldr r0, _08031744
- b _08031790
- .align 2, 0
-_08031744: .4byte gUnknown_80E1868
-_08031748:
- ldr r0, _0803174C
- b _08031790
- .align 2, 0
-_0803174C: .4byte gUnknown_80E1A30
-_08031750:
- ldr r0, _08031754
- b _08031790
- .align 2, 0
-_08031754: .4byte gUnknown_80E1AD8
-_08031758:
- ldr r0, _08031778
- ldr r1, [r3]
- ldr r2, [r1, 0x4]
- ldr r3, _0803177C
-_08031760:
- movs r4, 0
- str r4, [sp]
movs r1, 0x4
str r1, [sp, 0x4]
- str r4, [sp, 0x8]
- str r5, [sp, 0xC]
+ str r2, [sp, 0x8]
+ ldr r1, [r6]
+ movs r2, 0x84
+ lsls r2, 3
+ adds r1, r2
+ str r1, [sp, 0xC]
movs r1, 0xC
str r1, [sp, 0x10]
movs r1, 0
- bl sub_8014248
- b _080317B0
- .align 2, 0
-_08031778: .4byte gUnknown_80E0C4C
-_0803177C: .4byte gUnknown_80E0ABC
-_08031780:
- ldr r0, [r3]
- ldr r0, [r0, 0x4]
- cmp r0, 0x6
- beq _0803178E
- cmp r0, 0x9
- beq _080317A4
- b _080317B0
-_0803178E:
- ldr r0, _0803179C
-_08031790:
- ldr r3, _080317A0
- movs r1, 0
- adds r2, r5, 0
- bl sub_80141B4
- b _080317B0
- .align 2, 0
-_0803179C: .4byte gUnknown_80E1B88
-_080317A0: .4byte 0x0000010d
-_080317A4:
- ldr r0, _080317B8
- ldr r3, _080317BC
- movs r1, 0
- adds r2, r5, 0
- bl sub_80141B4
-_080317B0:
- add sp, 0x14
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080317B8: .4byte gUnknown_80E1D84
-_080317BC: .4byte 0x0000010d
- thumb_func_end sub_80315EC
-
- thumb_func_start sub_80317C0
-sub_80317C0:
- push {lr}
- ldr r1, _080317D4
- ldr r1, [r1]
- strb r0, [r1]
- bl nullsub_39
- bl sub_80315EC
- pop {r0}
- bx r0
- .align 2, 0
-_080317D4: .4byte gUnknown_203B32C
- thumb_func_end sub_80317C0
-
- thumb_func_start sub_80317D8
-sub_80317D8:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0803183C
- ldr r2, [sp]
- cmp r2, 0x5
- bhi _0803183C
- lsls r0, r2, 2
- ldr r1, _080317F8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080317F8: .4byte _080317FC
- .align 2, 0
-_080317FC:
- .4byte _08031830
- .4byte _08031830
- .4byte _08031830
- .4byte _0803181C
- .4byte _08031814
- .4byte _08031814
-_08031814:
- movs r0, 0
- bl sub_80317C0
- b _0803183C
-_0803181C:
- ldr r0, _0803182C
- ldr r0, [r0]
- str r2, [r0, 0x4]
- movs r0, 0x4
- bl sub_80317C0
- b _0803183C
- .align 2, 0
-_0803182C: .4byte gUnknown_203B32C
-_08031830:
- ldr r0, _08031844
- ldr r0, [r0]
- str r2, [r0, 0x4]
- movs r0, 0x3
- bl sub_80317C0
-_0803183C:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_08031844: .4byte gUnknown_203B32C
- thumb_func_end sub_80317D8
-
- thumb_func_start sub_8031848
-sub_8031848:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0803185C
- movs r0, 0x2
- bl sub_80317C0
-_0803185C:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_8031848
-
- thumb_func_start sub_8031864
-sub_8031864:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _080318C4
- ldr r0, [sp]
- subs r1, r0, 0x5
- adds r2, r0, 0
- cmp r1, 0x4
- bhi _080318C4
- lsls r0, r1, 2
- ldr r1, _08031888
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08031888: .4byte _0803188C
- .align 2, 0
-_0803188C:
- .4byte _080318A0
- .4byte _080318B8
- .4byte _080318A8
- .4byte _080318B0
- .4byte _080318B8
-_080318A0:
- movs r0, 0x2
- bl sub_80317C0
- b _080318C4
-_080318A8:
- movs r0, 0x6
- bl sub_80317C0
- b _080318C4
-_080318B0:
- movs r0, 0x8
- bl sub_80317C0
- b _080318C4
-_080318B8:
- ldr r0, _080318CC
- ldr r0, [r0]
- str r2, [r0, 0x4]
- movs r0, 0x5
- bl sub_80317C0
-_080318C4:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_080318CC: .4byte gUnknown_203B32C
- thumb_func_end sub_8031864
-
- thumb_func_start sub_80318D0
-sub_80318D0:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _080318E4
- movs r0, 0x4
- bl sub_80317C0
-_080318E4:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_80318D0
-
- thumb_func_start sub_80318EC
-sub_80318EC:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _08031920
- ldr r1, [sp]
- cmp r1, 0x5
- bne _08031908
- movs r0, 0x4
- bl sub_80317C0
- b _08031920
-_08031908:
- cmp r1, 0x5
- blt _08031920
- cmp r1, 0xE
- bgt _08031920
- cmp r1, 0xA
- blt _08031920
- ldr r0, _08031928
- ldr r0, [r0]
- str r1, [r0, 0x4]
- movs r0, 0x7
- bl sub_80317C0
-_08031920:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_08031928: .4byte gUnknown_203B32C
- thumb_func_end sub_80318EC
-
- thumb_func_start sub_803192C
-sub_803192C:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _08031940
- movs r0, 0x6
- bl sub_80317C0
-_08031940:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_803192C
-
- thumb_func_start sub_8031948
-sub_8031948:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0803197C
- ldr r1, [sp]
- cmp r1, 0x5
- bne _08031964
- movs r0, 0x4
- bl sub_80317C0
- b _0803197C
-_08031964:
- cmp r1, 0x5
- blt _0803197C
- cmp r1, 0x12
- bgt _0803197C
- cmp r1, 0xF
- blt _0803197C
- ldr r0, _08031984
- ldr r0, [r0]
- str r1, [r0, 0x4]
- movs r0, 0x9
- bl sub_80317C0
-_0803197C:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_08031984: .4byte gUnknown_203B32C
- thumb_func_end sub_8031948
-
- thumb_func_start sub_8031988
-sub_8031988:
- push {lr}
- sub sp, 0x4
- mov r0, sp
- bl sub_80144A4
- cmp r0, 0
- bne _0803199C
- movs r0, 0x8
- bl sub_80317C0
-_0803199C:
- add sp, 0x4
- pop {r0}
- bx r0
- thumb_func_end sub_8031988
-
- thumb_func_start sub_80319A4
-sub_80319A4:
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- adds r4, r0, 0
- adds r5, r1, 0
- mov r8, r2
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- ldr r6, _080319F4
- movs r0, 0x78
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r6]
- strb r4, [r0, 0xC]
- ldr r0, [r6]
- strb r5, [r0, 0xD]
- ldr r0, [r6]
- bl sub_801317C
- ldr r1, [r6]
- mov r0, r8
- str r0, [r1, 0x10]
- lsls r0, 1
- add r0, r8
- lsls r0, 3
- adds r0, 0x18
- adds r0, r1, r0
- str r0, [r1, 0x14]
- bl sub_8031A2C
- movs r0, 0x1
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_080319F4: .4byte gUnknown_203B330
- thumb_func_end sub_80319A4
-
- thumb_func_start sub_80319F8
-sub_80319F8:
- push {lr}
- ldr r0, _08031A18
- ldr r0, [r0]
- ldr r1, [r0, 0x10]
- bl sub_8012A64
- cmp r0, 0x1
- beq _08031A1C
- cmp r0, 0x2
- bne _08031A26
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _08031A28
- .align 2, 0
-_08031A18: .4byte gUnknown_203B330
-_08031A1C:
- movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _08031A28
-_08031A26:
- movs r0, 0
-_08031A28:
- pop {r1}
- bx r1
- thumb_func_end sub_80319F8
-
- thumb_func_start sub_8031A2C
-sub_8031A2C:
- push {lr}
- bl sub_8031A84
- bl sub_8031AE8
- pop {r0}
- bx r0
- thumb_func_end sub_8031A2C
-
- thumb_func_start sub_8031A3C
-sub_8031A3C:
- push {r4,r5,lr}
- ldr r4, _08031A7C
- ldr r2, [r4]
- cmp r2, 0
- beq _08031A76
- ldr r0, [r2, 0x10]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x18
- ldr r0, _08031A80
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x18
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_08031A76:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08031A7C: .4byte gUnknown_203B330
-_08031A80: .4byte gUnknown_80E1EFC
- thumb_func_end sub_8031A3C
-
- thumb_func_start sub_8031A84
-sub_8031A84:
- push {r4,r5,lr}
- ldr r4, _08031AE0
- ldr r0, [r4]
- adds r0, 0x18
- bl sub_8006518
- ldr r1, [r4]
- ldr r2, [r1, 0x10]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x18
- ldr r0, _08031AE4
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldr r1, [r4]
- ldrb r0, [r1, 0xC]
- cmp r0, 0x2
- bne _08031AC6
- ldrb r0, [r1, 0xD]
- bl sub_80969D0
- adds r1, r0, 0
- cmp r1, 0
- bne _08031ABE
- movs r1, 0x1
-_08031ABE:
- ldr r0, [r4]
- ldr r0, [r0, 0x14]
- bl sub_8012D08
-_08031AC6:
- bl ResetUnusedInputStruct
- ldr r0, _08031AE0
- ldr r0, [r0]
- adds r0, 0x18
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08031AE0: .4byte gUnknown_203B330
-_08031AE4: .4byte gUnknown_80E1F18
- thumb_func_end sub_8031A84
-
- thumb_func_start sub_8031AE8
-sub_8031AE8:
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xDC
- ldr r7, _08031B24
- ldr r0, [r7]
- ldr r0, [r0, 0x10]
- bl sub_80073B8
- ldr r2, _08031B28
- ldr r0, [r7]
- ldr r3, [r0, 0x10]
- movs r6, 0
- str r6, [sp]
- movs r0, 0xA
- movs r1, 0
- bl xxx_call_draw_string
- ldr r1, [r7]
- ldrb r0, [r1, 0xC]
- cmp r0, 0x1
- beq _08031B2C
- cmp r0, 0x1
- bgt _08031B1E
- b _08031CD4
-_08031B1E:
- cmp r0, 0x2
- beq _08031B94
- b _08031CD4
- .align 2, 0
-_08031B24: .4byte gUnknown_203B330
-_08031B28: .4byte gUnknown_80E1F30
-_08031B2C:
- add r4, sp, 0x68
- adds r0, r4, 0
- bl sub_8099394
- ldrb r0, [r4]
- bl sub_8095228
- adds r5, r0, 0
- ldr r0, [r7]
- ldr r3, [r0, 0x10]
- movs r0, 0xA
- movs r1, 0x10
- movs r2, 0x3
- bl sub_803B6B0
- ldr r1, _08031B8C
- ldrb r2, [r5, 0x5]
- add r0, sp, 0x4
- bl sub_800D158
- ldr r0, [r7]
- ldr r3, [r0, 0x10]
- str r6, [sp]
- movs r0, 0x15
- movs r1, 0x10
- add r2, sp, 0x4
- bl xxx_call_draw_string
- ldr r4, _08031B90
- movs r1, 0xC
- ldrsh r0, [r5, r1]
- bl GetMonSpecies
- adds r2, r0, 0
- add r0, sp, 0x4
- adds r1, r4, 0
- bl sub_800D158
- ldr r0, [r7]
- ldr r3, [r0, 0x10]
- str r6, [sp]
- movs r0, 0x28
- movs r1, 0x10
- add r2, sp, 0x4
- bl xxx_call_draw_string
- b _08031D4E
- .align 2, 0
-_08031B8C: .4byte gUnknown_80E1F3C
-_08031B90: .4byte gUnknown_80E1F40
-_08031B94:
- ldrb r0, [r1, 0xD]
- bl sub_80969D0
- adds r1, r0, 0
- cmp r1, 0
- bne _08031BB0
- ldr r2, _08031BAC
- ldr r0, [r7]
- ldr r3, [r0, 0x10]
- str r1, [sp]
- b _08031D2C
- .align 2, 0
-_08031BAC: .4byte gUnknown_80E1F54
-_08031BB0:
- movs r6, 0x10
- movs r2, 0
- mov r10, r2
- mov r8, r2
- ldr r0, _08031C28
- mov r9, r0
- mov r1, sp
- adds r1, 0x6C
- str r1, [sp, 0xD8]
-_08031BC2:
- mov r2, r10
- lsls r0, r2, 24
- lsrs r0, 24
- bl sub_8096AB4
- adds r4, r0, 0
- ldr r1, [r7]
- ldrb r0, [r4, 0x4]
- ldrb r2, [r1, 0xD]
- cmp r0, r2
- bne _08031CC2
- ldrb r0, [r4]
- cmp r0, 0
- beq _08031CC2
- cmp r0, 0x5
- beq _08031CC2
- cmp r0, 0x7
- beq _08031CC2
- ldr r3, [r1, 0x10]
- movs r0, 0xA
- adds r1, r6, 0
- movs r2, 0x3
- bl sub_803B6B0
- ldrb r0, [r4, 0x1]
- add r5, sp, 0x6C
- cmp r0, 0x3
- beq _08031C16
- ldrb r2, [r4, 0x5]
- ldr r0, [sp, 0xD8]
- ldr r1, _08031C2C
- bl sub_800D158
- ldr r0, [r7]
- ldr r3, [r0, 0x10]
- mov r0, r8
- str r0, [sp]
- movs r0, 0x15
- adds r1, r6, 0
- ldr r2, [sp, 0xD8]
- bl xxx_call_draw_string
-_08031C16:
- ldrb r0, [r4, 0x1]
- cmp r0, 0x3
- beq _08031C58
- cmp r0, 0x3
- bgt _08031C30
- cmp r0, 0x2
- beq _08031C70
- b _08031C9C
- .align 2, 0
-_08031C28: .4byte gUnknown_202DE58
-_08031C2C: .4byte gUnknown_80E1F3C
-_08031C30:
- cmp r0, 0x4
- bne _08031C9C
- ldrb r1, [r4, 0x10]
- mov r0, r9
movs r2, 0
- bl sub_8090DC4
- adds r0, r5, 0
- ldr r1, _08031C54
- mov r2, r9
- bl sub_800D158
- ldr r0, [r7]
- ldr r3, [r0, 0x10]
- mov r1, r8
- str r1, [sp]
- b _08031C8A
+ bl sub_8014248
+ b _08028AF2
.align 2, 0
-_08031C54: .4byte gUnknown_80E1F60
-_08031C58:
- ldrb r1, [r4, 0x10]
- mov r0, r9
+_08028AAC: .4byte gUnknown_80DE8B4
+_08028AB0: .4byte gUnknown_80DD970
+_08028AB4:
+ ldr r0, _08028AD8
+ ldr r3, _08028ADC
movs r2, 0
- bl sub_8090DC4
- adds r0, r5, 0
- ldr r1, _08031C6C
- mov r2, r9
- b _08031C7E
- .align 2, 0
-_08031C6C: .4byte gUnknown_80E1F70
-_08031C70:
- movs r1, 0xE
- ldrsh r0, [r4, r1]
- bl GetMonSpecies
- adds r2, r0, 0
- adds r0, r5, 0
- ldr r1, _08031C98
-_08031C7E:
- bl sub_800D158
- ldr r0, [r7]
- ldr r3, [r0, 0x10]
- mov r2, r8
- str r2, [sp]
-_08031C8A:
- movs r0, 0x28
- adds r1, r6, 0
- adds r2, r5, 0
- bl xxx_call_draw_string
- b _08031CC0
- .align 2, 0
-_08031C98: .4byte gUnknown_80E1F80
-_08031C9C:
- movs r1, 0xE
- ldrsh r0, [r4, r1]
- bl GetMonSpecies
- adds r2, r0, 0
- adds r0, r5, 0
- ldr r1, _08031CD0
- bl sub_800D158
- ldr r0, [r7]
- ldr r3, [r0, 0x10]
- mov r2, r8
str r2, [sp]
- movs r0, 0x28
- adds r1, r6, 0
- adds r2, r5, 0
- bl xxx_call_draw_string
-_08031CC0:
- adds r6, 0xC
-_08031CC2:
- movs r0, 0x1
- add r10, r0
- mov r1, r10
- cmp r1, 0x7
- bgt _08031CCE
- b _08031BC2
-_08031CCE:
- b _08031D4E
- .align 2, 0
-_08031CD0: .4byte gUnknown_80E1F40
-_08031CD4:
- add r0, sp, 0xD0
- mov r4, sp
- adds r4, 0xD2
- adds r1, r4, 0
- bl sub_80992E0
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- beq _08031D04
- movs r2, 0
- ldrsh r0, [r4, r2]
- bl GetCurrentMissionText
- adds r2, r0, 0
- ldr r0, _08031D00
- ldr r0, [r0]
- ldr r3, [r0, 0x10]
- movs r0, 0
- str r0, [sp]
- b _08031D2C
- .align 2, 0
-_08031D00: .4byte gUnknown_203B330
-_08031D04:
- add r4, sp, 0xD4
- adds r0, r4, 0
- bl sub_8099360
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _08031D3C
- ldrb r0, [r4]
- bl sub_80A2688
- lsls r0, 16
- asrs r0, 16
- bl sub_80975DC
- adds r2, r0, 0
- ldr r0, _08031D38
- ldr r0, [r0]
- ldr r3, [r0, 0x10]
- str r5, [sp]
-_08031D2C:
- movs r0, 0xA
- movs r1, 0x10
- bl xxx_call_draw_string
- b _08031D4E
- .align 2, 0
-_08031D38: .4byte gUnknown_203B330
-_08031D3C:
- ldr r2, _08031D68
- ldr r0, _08031D6C
- ldr r0, [r0]
- ldr r3, [r0, 0x10]
- str r1, [sp]
- movs r0, 0xA
- movs r1, 0x10
- bl xxx_call_draw_string
-_08031D4E:
- ldr r0, _08031D6C
- ldr r0, [r0]
- ldr r0, [r0, 0x10]
- bl sub_80073E0
- add sp, 0xDC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08031D68: .4byte gUnknown_80E1F94
-_08031D6C: .4byte gUnknown_203B330
- thumb_func_end sub_8031AE8
-
- thumb_func_start sub_8031D70
-sub_8031D70:
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r4, r1, 0
- ldr r5, _08031DC4
- movs r0, 0x7C
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r5]
- stm r0!, {r6}
- bl sub_801317C
- ldr r0, [r5]
- str r4, [r0, 0x10]
- lsls r1, r4, 1
+ movs r1, 0x4
+ str r1, [sp, 0x4]
+ str r2, [sp, 0x8]
+ ldr r1, [r6]
+ movs r4, 0x84
+ lsls r4, 3
adds r1, r4
- lsls r1, 3
- adds r1, 0x18
- adds r1, r0, r1
- str r1, [r0, 0x14]
- adds r0, 0x18
- bl sub_8006518
- ldr r1, [r5]
- ldr r2, [r1, 0x10]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x18
- ldr r0, _08031DC8
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- bl sub_8031E00
- movs r0, 0x1
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08031DC4: .4byte gUnknown_203B334
-_08031DC8: .4byte gUnknown_80E1FC4
- thumb_func_end sub_8031D70
-
- thumb_func_start sub_8031DCC
-sub_8031DCC:
- push {lr}
- ldr r0, _08031DEC
- ldr r1, [r0]
- adds r0, r1, 0x4
- ldr r1, [r1, 0x10]
- bl sub_8012A64
- cmp r0, 0x1
- beq _08031DF0
- cmp r0, 0x2
- bne _08031DFA
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _08031DFC
- .align 2, 0
-_08031DEC: .4byte gUnknown_203B334
-_08031DF0:
- movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _08031DFC
-_08031DFA:
- movs r0, 0
-_08031DFC:
- pop {r1}
- bx r1
- thumb_func_end sub_8031DCC
-
- thumb_func_start sub_8031E00
-sub_8031E00:
- push {lr}
- bl sub_8031E58
- bl sub_8031E74
- pop {r0}
- bx r0
- thumb_func_end sub_8031E00
-
- thumb_func_start sub_8031E10
-sub_8031E10:
- push {r4,r5,lr}
- ldr r4, _08031E50
- ldr r2, [r4]
- cmp r2, 0
- beq _08031E4A
- ldr r0, [r2, 0x10]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x18
- ldr r0, _08031E54
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x18
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_08031E4A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08031E50: .4byte gUnknown_203B334
-_08031E54: .4byte gUnknown_80E1FA8
- thumb_func_end sub_8031E10
-
- thumb_func_start sub_8031E58
-sub_8031E58:
- push {lr}
- bl ResetUnusedInputStruct
- ldr r0, _08031E70
- ldr r0, [r0]
- adds r0, 0x18
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r0}
- bx r0
- .align 2, 0
-_08031E70: .4byte gUnknown_203B334
- thumb_func_end sub_8031E58
-
- thumb_func_start sub_8031E74
-sub_8031E74:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x3C
- ldr r3, _08031EC0
- ldr r5, _08031EC4
- ldr r2, [r5]
- ldr r1, [r2]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 4
- ldr r4, [r3]
- adds r4, r0
- ldr r0, [r2, 0x10]
- bl sub_80073B8
- ldr r2, _08031EC8
- ldr r0, [r5]
- ldr r3, [r0, 0x10]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x14
+ str r1, [sp, 0xC]
+ movs r1, 0xC
+ str r1, [sp, 0x10]
movs r1, 0
- bl xxx_call_draw_string
- add r0, sp, 0x4
- adds r1, r4, 0
- bl sub_803D2C0
- movs r7, 0
- mov r8, r5
-_08031EB2:
- cmp r7, 0x4
- ble _08031ED0
- cmp r7, 0xC
- bgt _08031ECC
- movs r6, 0x6
- movs r5, 0x16
- b _08031F00
- .align 2, 0
-_08031EC0: .4byte gUnknown_203B480
-_08031EC4: .4byte gUnknown_203B334
-_08031EC8: .4byte gUnknown_80E1FDC
-_08031ECC:
- cmp r7, 0x11
- bgt _08031ED6
-_08031ED0:
- movs r6, 0x7
- movs r5, 0x15
- b _08031F00
-_08031ED6:
- cmp r7, 0x16
- ble _08031EE8
- cmp r7, 0x1E
- bgt _08031EE4
- movs r6, 0x6
- movs r5, 0x25
- b _08031F00
-_08031EE4:
- cmp r7, 0x23
- bgt _08031EEE
-_08031EE8:
- movs r6, 0x7
- movs r5, 0x24
- b _08031F00
-_08031EEE:
- cmp r7, 0x28
- ble _08031EFC
- cmp r7, 0x30
- bgt _08031EFC
- movs r6, 0x6
- movs r5, 0x34
- b _08031F00
-_08031EFC:
- movs r6, 0x7
- movs r5, 0x33
-_08031F00:
- adds r0, r7, 0
- movs r1, 0x12
- bl __modsi3
- movs r1, 0xB
- adds r4, r0, 0
- muls r4, r1
- adds r4, 0x6
- mov r0, sp
- adds r0, r7
- adds r0, 0x4
- ldrb r2, [r0]
- mov r1, r8
- ldr r0, [r1]
- ldr r0, [r0, 0x10]
- str r0, [sp]
- adds r0, r4, 0
- adds r1, r5, 0
- adds r3, r6, 0
- bl sub_8012C60
- mov r1, r8
- ldr r0, [r1]
- ldr r0, [r0, 0x10]
- adds r2, r5, 0
- adds r2, 0xA
- movs r1, 0x5
- str r1, [sp]
- adds r1, r4, 0
- movs r3, 0xA
- bl sub_80078A4
- adds r7, 0x1
- cmp r7, 0x35
- ble _08031EB2
- ldr r0, _08031F5C
- ldr r0, [r0]
- ldr r0, [r0, 0x10]
- bl sub_80073E0
- add sp, 0x3C
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08031F5C: .4byte gUnknown_203B334
- thumb_func_end sub_8031E74
-
- thumb_func_start CreateAdventureLogScreen
-CreateAdventureLogScreen:
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r4, _08031FD0
- movs r0, 0xA0
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
- str r5, [r0, 0x34]
- lsls r1, r5, 1
- adds r1, r5
- lsls r1, 3
- adds r1, 0x3C
- adds r1, r0, r1
- str r1, [r0, 0x38]
- adds r0, 0x3C
- bl sub_8006518
- ldr r1, [r4]
- ldr r2, [r1, 0x34]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x3C
- ldr r0, _08031FD4
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldr r0, [r4]
- ldr r1, [r0, 0x38]
- adds r0, 0x9C
- str r0, [r1, 0x14]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x3C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- movs r1, 0x20
- movs r2, 0x8
- adds r3, r5, 0
- bl sub_8013818
- bl sub_8032084
- bl DisplayAdventureLog
- movs r0, 0x1
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08031FD0: .4byte gUnknown_203B338
-_08031FD4: .4byte gUnknown_80E2008
- thumb_func_end CreateAdventureLogScreen
-
- thumb_func_start HandleAdventureLogInput
-HandleAdventureLogInput:
- push {r4,lr}
- lsls r0, 24
- cmp r0, 0
- bne _08031FF0
- ldr r0, _08031FEC
- ldr r0, [r0]
- bl sub_8013660
- movs r0, 0
- b _08032034
- .align 2, 0
-_08031FEC: .4byte gUnknown_203B338
-_08031FF0:
- ldr r4, _0803200C
- ldr r0, [r4]
- bl GetKeyPress
- cmp r0, 0x1
- beq _08032010
- cmp r0, 0x2
- bne _0803201A
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _08032034
- .align 2, 0
-_0803200C: .4byte gUnknown_203B338
-_08032010:
- movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _08032034
-_0803201A:
- ldr r0, [r4]
- bl sub_8013938
- lsls r0, 24
- cmp r0, 0
- bne _0803202A
- movs r0, 0
- b _08032034
-_0803202A:
- bl sub_8032084
- bl DisplayAdventureLog
- movs r0, 0x1
-_08032034:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end HandleAdventureLogInput
-
- thumb_func_start sub_803203C
-sub_803203C:
- push {r4,r5,lr}
- ldr r4, _0803207C
- ldr r2, [r4]
- cmp r2, 0
- beq _08032076
- ldr r0, [r2, 0x34]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x3C
- ldr r0, _08032080
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x3C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_08032076:
- pop {r4,r5}
- pop {r0}
- bx r0
+ bl sub_8014248
+ b _08028AF2
.align 2, 0
-_0803207C: .4byte gUnknown_203B338
-_08032080: .4byte gUnknown_80E1FF0
- thumb_func_end sub_803203C
-
- thumb_func_start sub_8032084
-sub_8032084:
- push {r4,lr}
- ldr r4, _080320F4
- ldr r0, [r4]
- ldrh r1, [r0, 0x20]
- adds r0, 0x9C
- movs r2, 0
- strb r1, [r0]
- ldr r0, [r4]
- ldrh r1, [r0, 0x1E]
- adds r0, 0x9D
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0x9E
- movs r1, 0xB
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0x9F
- strb r2, [r0]
- ldr r0, [r4]
- movs r1, 0x1A
- ldrsh r0, [r0, r1]
- movs r1, 0xC
- bl sub_80095E4
- adds r0, 0x2
- lsls r0, 16
- ldr r2, [r4]
- ldr r3, [r2, 0x34]
- lsls r1, r3, 1
- adds r1, r3
+_08028AD8: .4byte gUnknown_80DE918
+_08028ADC: .4byte gUnknown_80DD970
+_08028AE0:
+ ldr r0, _08028AFC
+ ldr r2, [r6]
+ movs r1, 0x84
lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x4A
- asrs r3, r0, 16
- lsrs r0, 16
- strh r0, [r1]
- ldr r1, [r2, 0x34]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r2, r0
- adds r3, 0x2
- adds r2, 0x4C
- strh r3, [r2]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x3C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080320F4: .4byte gUnknown_203B338
- thumb_func_end sub_8032084
-
- thumb_func_start DisplayAdventureLog
-DisplayAdventureLog:
- push {r4-r7,lr}
- sub sp, 0x8
- ldr r5, _08032158
- ldr r0, [r5]
- ldr r0, [r0, 0x34]
- bl sub_8008C54
- ldr r0, [r5]
- ldr r0, [r0, 0x34]
- bl sub_80073B8
- ldr r0, [r5]
- movs r1, 0x1E
- ldrsh r4, [r0, r1]
- lsls r4, 3
- adds r6, r4, 0
- adds r6, 0xA
- ldr r2, _0803215C
- ldr r3, [r0, 0x34]
- movs r0, 0
- str r0, [sp]
- adds r0, r6, 0
- movs r1, 0
- bl xxx_call_draw_string
- adds r4, 0x4
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x9E
- ldrb r0, [r0]
- lsls r0, 3
- adds r6, r4, r0
- movs r0, 0x1E
- ldrsh r2, [r1, r0]
- adds r2, 0x1
- movs r0, 0x7
- str r0, [sp]
- ldr r0, [r1, 0x34]
- str r0, [sp, 0x4]
- adds r0, r6, 0
+ adds r2, r1
+ ldr r3, _08028B00
movs r1, 0
- movs r3, 0x1
- bl sub_8012BC4
- movs r7, 0
- ldr r0, [r5]
- b _0803223A
- .align 2, 0
-_08032158: .4byte gUnknown_203B338
-_0803215C: .4byte gUnknown_80E2020
-_08032160:
- ldr r5, _08032194
- ldr r0, [r5]
- movs r2, 0x1E
- ldrsh r1, [r0, r2]
- movs r2, 0x1C
- ldrsh r0, [r0, r2]
- muls r0, r1
- adds r0, r7
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r6, 0
- bl sub_8097710
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _0803221C
- subs r0, r6, 0x7
- cmp r0, 0x5
- bhi _080321EC
- lsls r0, 2
- ldr r1, _08032198
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08032194: .4byte gUnknown_203B338
-_08032198: .4byte _0803219C
- .align 2, 0
-_0803219C:
- .4byte _080321BA
- .4byte _080321C6
- .4byte _080321D4
- .4byte _080321E0
- .4byte _080321C0
- .4byte _080321B4
-_080321B4:
- bl sub_80978B8
- b _080321E4
-_080321BA:
- bl sub_8097880
- b _080321E4
-_080321C0:
- bl sub_8097838
- b _080321E4
-_080321C6:
- bl sub_80977B8
- ldr r1, _080321D0
- b _080321EA
- .align 2, 0
-_080321D0: .4byte gUnknown_202DE30
-_080321D4:
- bl sub_80977F8
- ldr r1, _080321DC
- b _080321EA
- .align 2, 0
-_080321DC: .4byte gUnknown_202DE30
-_080321E0:
- bl sub_8097870
-_080321E4:
- ldr r1, _08032214
- lsls r0, 16
- asrs r0, 16
-_080321EA:
- str r0, [r1]
-_080321EC:
- ldr r4, _08032218
- ldr r0, [r4]
- adds r1, r7, 0
- bl sub_8013800
- adds r5, r0, 0
- adds r0, r6, 0
- bl GetAdventureLogLine
- adds r2, r0, 0
- ldr r0, [r4]
- ldr r3, [r0, 0x34]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x8
- adds r1, r5, 0
- bl sub_8014FF0
- b _08032234
- .align 2, 0
-_08032214: .4byte gUnknown_202DE30
-_08032218: .4byte gUnknown_203B338
-_0803221C:
- ldr r0, [r5]
- adds r1, r7, 0
- bl sub_8013800
- adds r1, r0, 0
- ldr r2, _08032254
- ldr r0, [r5]
- ldr r3, [r0, 0x34]
- str r4, [sp]
- movs r0, 0x8
- bl xxx_call_draw_string
-_08032234:
- adds r7, 0x1
- ldr r0, _08032258
- ldr r0, [r0]
-_0803223A:
- movs r1, 0x1A
- ldrsh r0, [r0, r1]
- cmp r7, r0
- blt _08032160
- ldr r0, _08032258
- ldr r0, [r0]
- ldr r0, [r0, 0x34]
- bl sub_80073E0
- add sp, 0x8
- pop {r4-r7}
+ bl sub_80141B4
+_08028AF2:
+ add sp, 0x14
+ pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
-_08032254: .4byte gUnknown_80E2030
-_08032258: .4byte gUnknown_203B338
- thumb_func_end DisplayAdventureLog
+_08028AFC: .4byte gUnknown_80DE93C
+_08028B00: .4byte 0x0000010d
+ thumb_func_end sub_8028348
.align 2,0