summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/cable_club.s28
-rw-r--r--asm/event_object_80688E4.s8
-rw-r--r--asm/event_object_movement.s8
-rw-r--r--asm/field_control_avatar.s12
-rw-r--r--asm/field_player_avatar.s6
-rw-r--r--asm/field_weather.s6
-rw-r--r--asm/item_menu.s7021
-rw-r--r--asm/macros/event.inc7
-rw-r--r--asm/overworld.s46
-rw-r--r--asm/pokemon_storage_system.s6
-rw-r--r--asm/script_movement.s2
-rw-r--r--asm/union_room.s11147
-rw-r--r--asm/union_room_player_avatar.s2064
13 files changed, 68 insertions, 20293 deletions
diff --git a/asm/cable_club.s b/asm/cable_club.s
index 2aa355ab4..27a3d93f4 100644
--- a/asm/cable_club.s
+++ b/asm/cable_club.s
@@ -773,10 +773,10 @@ _08080D44:
_08080D50: .4byte sub_8080F78
_08080D54:
bl GetLinkPlayerCount_2
- ldr r4, _08080D7C @ =gUnknown_3005030
+ ldr r4, _08080D7C @ =gFieldLinkPlayerCount
strb r0, [r4]
bl GetMultiplayerId
- ldr r1, _08080D80 @ =gUnknown_300502C
+ ldr r1, _08080D80 @ =gLocalLinkPlayerId
strb r0, [r1]
ldrb r0, [r4]
bl sub_800A900
@@ -790,8 +790,8 @@ _08080D74:
pop {r0}
bx r0
.align 2, 0
-_08080D7C: .4byte gUnknown_3005030
-_08080D80: .4byte gUnknown_300502C
+_08080D7C: .4byte gFieldLinkPlayerCount
+_08080D80: .4byte gLocalLinkPlayerId
_08080D84: .4byte gBlockSendBuffer
_08080D88: .4byte sub_8080E6C
thumb_func_end sub_8080CDC
@@ -876,10 +876,10 @@ _08080E18: .4byte gTasks
_08080E1C: .4byte sub_8080F78
_08080E20:
bl GetLinkPlayerCount_2
- ldr r4, _08080E58 @ =gUnknown_3005030
+ ldr r4, _08080E58 @ =gFieldLinkPlayerCount
strb r0, [r4]
bl GetMultiplayerId
- ldr r1, _08080E5C @ =gUnknown_300502C
+ ldr r1, _08080E5C @ =gLocalLinkPlayerId
strb r0, [r1]
ldrb r0, [r4]
bl sub_800A900
@@ -899,8 +899,8 @@ _08080E50:
pop {r0}
bx r0
.align 2, 0
-_08080E58: .4byte gUnknown_3005030
-_08080E5C: .4byte gUnknown_300502C
+_08080E58: .4byte gFieldLinkPlayerCount
+_08080E5C: .4byte gLocalLinkPlayerId
_08080E60: .4byte gBlockSendBuffer
_08080E64: .4byte gTasks
_08080E68: .4byte sub_8080E6C
@@ -1536,7 +1536,7 @@ _08081344:
_0808135C:
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
ldr r1, _08081374 @ =gLinkType
ldr r2, _08081378 @ =0x00002211
adds r0, r2, 0
@@ -1693,7 +1693,7 @@ _08081480:
_080814A0:
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
ldr r0, _080814BC @ =gLinkType
ldr r2, _080814C0 @ =0x00002211
adds r1, r2, 0
@@ -1931,7 +1931,7 @@ sub_8081668: @ 8081668
ldrh r0, [r0]
cmp r0, 0x5
beq _0808170A
- ldr r0, _080816BC @ =gUnknown_300502C
+ ldr r0, _080816BC @ =gLocalLinkPlayerId
ldrb r0, [r0]
movs r5, 0x1
eors r0, r5
@@ -1951,7 +1951,7 @@ sub_8081668: @ 8081668
_080816B0: .4byte gBattleTypeFlags
_080816B4: .4byte 0x0000ffdf
_080816B8: .4byte gSpecialVar_0x8004
-_080816BC: .4byte gUnknown_300502C
+_080816BC: .4byte gLocalLinkPlayerId
_080816C0: .4byte gWirelessCommType
_080816C4: .4byte gBattleOutcome
_080816C8:
@@ -2179,7 +2179,7 @@ _08081882:
bl ScriptContext2_Enable
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
bl ClearLinkCallback_2
b _080818B8
_08081894:
@@ -2255,7 +2255,7 @@ _0808191A:
bl ScriptContext2_Enable
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
bl Rfu_set_zero
b _08081950
_0808192C:
diff --git a/asm/event_object_80688E4.s b/asm/event_object_80688E4.s
index 1482529fe..93309a80d 100644
--- a/asm/event_object_80688E4.s
+++ b/asm/event_object_80688E4.s
@@ -154,8 +154,8 @@ _080689EC: .4byte gObjectEvents
_080689F0: .4byte gPlayerAvatar
thumb_func_end FreezeObjectEventsExceptOne
- thumb_func_start npc_sync_anim_pause_bits
-npc_sync_anim_pause_bits: @ 80689F4
+ thumb_func_start UnfreezeObjectEvent
+UnfreezeObjectEvent: @ 80689F4
push {r4,r5,lr}
adds r5, r0, 0
ldrh r2, [r5]
@@ -207,7 +207,7 @@ _08068A4C:
.align 2, 0
_08068A54: .4byte 0x00000101
_08068A58: .4byte gSprites
- thumb_func_end npc_sync_anim_pause_bits
+ thumb_func_end UnfreezeObjectEvent
thumb_func_start UnfreezeObjectEvents
UnfreezeObjectEvents: @ 8068A5C
@@ -224,7 +224,7 @@ _08068A62:
cmp r0, 0
beq _08068A78
adds r0, r1, 0
- bl npc_sync_anim_pause_bits
+ bl UnfreezeObjectEvent
_08068A78:
adds r0, r4, 0x1
lsls r0, 24
diff --git a/asm/event_object_movement.s b/asm/event_object_movement.s
index 66207007c..30af8949b 100644
--- a/asm/event_object_movement.s
+++ b/asm/event_object_movement.s
@@ -1427,8 +1427,8 @@ SpawnSpecialObjectEventParameterized: @ 805E830
_0805E894: .4byte 0xfff90000
thumb_func_end SpawnSpecialObjectEventParameterized
- thumb_func_start show_sprite
-show_sprite: @ 805E898
+ thumb_func_start TrySpawnObjectEvent
+TrySpawnObjectEvent: @ 805E898
push {r4-r7,lr}
sub sp, 0x8
lsls r0, 24
@@ -1468,7 +1468,7 @@ _0805E8E0:
pop {r4-r7}
pop {r1}
bx r1
- thumb_func_end show_sprite
+ thumb_func_end TrySpawnObjectEvent
thumb_func_start sub_805E8E8
sub_805E8E8: @ 805E8E8
@@ -13157,7 +13157,7 @@ _08063CC8:
bl ObjectEventClearAnimIfSpecialAnimActive
_08063CCE:
adds r0, r4, 0
- bl npc_sync_anim_pause_bits
+ bl UnfreezeObjectEvent
movs r3, 0
strb r5, [r4, 0x1C]
ldrb r0, [r4]
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s
index 673c8bfc3..83f9a5700 100644
--- a/asm/field_control_avatar.s
+++ b/asm/field_control_avatar.s
@@ -1100,11 +1100,11 @@ sub_806D0E4: @ 806D0E4
ldr r0, [r5, 0x8]
cmp r0, 0
bne _0806D120
- ldr r0, _0806D11C @ =EventScript_1C555B
+ ldr r0, _0806D11C @ =Test_EventScript_Sign
b _0806D1E6
.align 2, 0
_0806D118: .4byte gMapHeader
-_0806D11C: .4byte EventScript_1C555B
+_0806D11C: .4byte Test_EventScript_Sign
_0806D120:
adds r0, r7, 0
adds r1, r6, 0
@@ -1834,11 +1834,11 @@ _0806D704:
beq _0806D720
movs r0, 0xD
bl IncrementGameStat
- ldr r0, _0806D71C @ =EventScript_81BF546
+ ldr r0, _0806D71C @ =EventScript_EggHatch
bl ScriptContext1_SetupScript
b _0806D730
.align 2, 0
-_0806D71C: .4byte EventScript_81BF546
+_0806D71C: .4byte EventScript_EggHatch
_0806D720:
bl SafariZoneTakeStep
lsls r0, 24
@@ -2150,13 +2150,13 @@ _0806D950:
ldr r0, [r0, 0x8]
cmp r0, 0
bne _0806D958
- ldr r0, _0806D960 @ =EventScript_1C555B
+ ldr r0, _0806D960 @ =Test_EventScript_Sign
_0806D958:
pop {r4}
pop {r1}
bx r1
.align 2, 0
-_0806D960: .4byte EventScript_1C555B
+_0806D960: .4byte Test_EventScript_Sign
thumb_func_end sub_806D928
thumb_func_start mapheader_run_first_tag2_script_list_match_conditionally
diff --git a/asm/field_player_avatar.s b/asm/field_player_avatar.s
index e4b28d6c6..a605f1439 100644
--- a/asm/field_player_avatar.s
+++ b/asm/field_player_avatar.s
@@ -2445,8 +2445,8 @@ _0805C560: .4byte gObjectEvents
_0805C564: .4byte gPlayerAvatar
thumb_func_end PlayerGetDestCoords
- thumb_func_start plaer_get_pos_including_state_based_drift
-plaer_get_pos_including_state_based_drift: @ 805C568
+ thumb_func_start player_get_pos_including_state_based_drift
+player_get_pos_including_state_based_drift: @ 805C568
push {r4,r5,lr}
adds r4, r0, 0
adds r5, r1, 0
@@ -2580,7 +2580,7 @@ _0805C6BC:
pop {r4,r5}
pop {r1}
bx r1
- thumb_func_end plaer_get_pos_including_state_based_drift
+ thumb_func_end player_get_pos_including_state_based_drift
thumb_func_start GetPlayerFacingDirection
GetPlayerFacingDirection: @ 805C6C4
diff --git a/asm/field_weather.s b/asm/field_weather.s
index ece13573f..7960543a6 100644
--- a/asm/field_weather.s
+++ b/asm/field_weather.s
@@ -1584,8 +1584,8 @@ _0807A810: .4byte 0x000006c6
_0807A814: .4byte 0x000006c2
thumb_func_end sub_807A7C4
- thumb_func_start fade_screen
-fade_screen: @ 807A818
+ thumb_func_start FadeScreen
+FadeScreen: @ 807A818
push {r4,r5,lr}
sub sp, 0x4
lsls r0, 24
@@ -1735,7 +1735,7 @@ _0807A934: .4byte gUnknown_2037F34
_0807A938: .4byte 0x000006c6
_0807A93C: .4byte 0x000006ca
_0807A940: .4byte 0x000006cb
- thumb_func_end fade_screen
+ thumb_func_end FadeScreen
thumb_func_start FieldWeather_StartFadingOutCreditsMap
FieldWeather_StartFadingOutCreditsMap: @ 807A944
diff --git a/asm/item_menu.s b/asm/item_menu.s
deleted file mode 100644
index 704d8d5d8..000000000
--- a/asm/item_menu.s
+++ /dev/null
@@ -1,7021 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start GoToBagMenu
-GoToBagMenu: @ 8107DB4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r4, r2, 0
- lsls r0, 24
- lsrs r6, r0, 24
- adds r7, r6, 0
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- bl sub_81081AC
- ldr r5, _08107DE4 @ =gUnknown_203AD10
- movs r0, 0x14
- bl Alloc
- str r0, [r5]
- cmp r0, 0
- bne _08107DE8
- adds r0, r4, 0
- bl SetMainCallback2
- b _08107E9A
- .align 2, 0
-_08107DE4: .4byte gUnknown_203AD10
-_08107DE8:
- cmp r6, 0xB
- beq _08107DF0
- ldr r0, _08107E38 @ =gUnknown_203ACFC
- strb r6, [r0, 0x4]
-_08107DF0:
- cmp r4, 0
- beq _08107DF8
- ldr r0, _08107E38 @ =gUnknown_203ACFC
- str r4, [r0]
-_08107DF8:
- ldr r1, [r5]
- movs r0, 0
- str r0, [r1]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldr r2, [r5]
- ldrb r1, [r2, 0x5]
- movs r0, 0x31
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x5]
- ldr r2, [r5]
- ldrb r1, [r2, 0x5]
- movs r0, 0x3F
- ands r0, r1
- strb r0, [r2, 0x5]
- ldr r1, [r5]
- movs r0, 0x1
- negs r0, r0
- strb r0, [r1, 0x8]
- ldr r1, [r5]
- strb r0, [r1, 0x9]
- cmp r6, 0x3
- bne _08107E3C
- ldr r2, [r5]
- ldrb r1, [r2, 0x5]
- subs r0, 0xF
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- b _08107E5A
- .align 2, 0
-_08107E38: .4byte gUnknown_203ACFC
-_08107E3C:
- cmp r7, 0x6
- bne _08107E50
- ldr r2, [r5]
- ldrb r1, [r2, 0x5]
- movs r0, 0x10
- negs r0, r0
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- b _08107E5A
-_08107E50:
- ldr r2, [r5]
- ldrb r1, [r2, 0x5]
- movs r0, 0x10
- negs r0, r0
- ands r0, r1
-_08107E5A:
- strb r0, [r2, 0x5]
- movs r1, 0
- ldr r4, _08107EA4 @ =gTextFlags
- ldr r5, _08107EA8 @ =gSpecialVar_ItemId
- ldr r6, _08107EAC @ =sub_8107F10
- ldr r3, _08107EB0 @ =gUnknown_203AD10
- movs r2, 0
-_08107E68:
- ldr r0, [r3]
- adds r0, 0x10
- adds r0, r1
- strb r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x3
- bls _08107E68
- mov r0, r8
- cmp r0, 0x2
- bhi _08107E86
- ldr r0, _08107EB4 @ =gUnknown_203ACFC
- mov r1, r8
- strh r1, [r0, 0x6]
-_08107E86:
- ldrb r0, [r4]
- movs r1, 0x5
- negs r1, r1
- ands r1, r0
- strb r1, [r4]
- movs r0, 0
- strh r0, [r5]
- adds r0, r6, 0
- bl SetMainCallback2
-_08107E9A:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08107EA4: .4byte gTextFlags
-_08107EA8: .4byte gSpecialVar_ItemId
-_08107EAC: .4byte sub_8107F10
-_08107EB0: .4byte gUnknown_203AD10
-_08107EB4: .4byte gUnknown_203ACFC
- thumb_func_end GoToBagMenu
-
- thumb_func_start CB2_BagMenuFromStartMenu
-CB2_BagMenuFromStartMenu: @ 8107EB8
- push {lr}
- ldr r2, _08107EC8 @ =CB2_ReturnToFieldWithOpenMenu
- movs r0, 0
- movs r1, 0x3
- bl GoToBagMenu
- pop {r0}
- bx r0
- .align 2, 0
-_08107EC8: .4byte CB2_ReturnToFieldWithOpenMenu
- thumb_func_end CB2_BagMenuFromStartMenu
-
- thumb_func_start sub_8107ECC
-sub_8107ECC: @ 8107ECC
- push {lr}
- ldr r2, _08107EDC @ =SetCB2ToReshowScreenAfterMenu2
- movs r0, 0x5
- movs r1, 0x3
- bl GoToBagMenu
- pop {r0}
- bx r0
- .align 2, 0
-_08107EDC: .4byte SetCB2ToReshowScreenAfterMenu2
- thumb_func_end sub_8107ECC
-
- thumb_func_start sub_8107EE0
-sub_8107EE0: @ 8107EE0
- push {lr}
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl DoScheduledBgTilemapCopiesToVram
- bl UpdatePaletteFade
- pop {r0}
- bx r0
- thumb_func_end sub_8107EE0
-
- thumb_func_start sub_8107EFC
-sub_8107EFC: @ 8107EFC
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_8107EFC
-
- thumb_func_start sub_8107F10
-sub_8107F10: @ 8107F10
- push {lr}
-_08107F12:
- bl sub_80BF72C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08107F36
- bl sub_8107F3C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08107F36
- bl MenuHelpers_LinkSomething
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08107F12
-_08107F36:
- pop {r0}
- bx r0
- thumb_func_end sub_8107F10
-
- thumb_func_start sub_8107F3C
-sub_8107F3C: @ 8107F3C
- push {r4,r5,lr}
- ldr r0, _08107F58 @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x13
- bls _08107F4E
- b _0810811C
-_08107F4E:
- lsls r0, 2
- ldr r1, _08107F5C @ =_08107F60
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08107F58: .4byte gMain
-_08107F5C: .4byte _08107F60
- .align 2, 0
-_08107F60:
- .4byte _08107FB0
- .4byte _08107FBA
- .4byte _08107FC0
- .4byte _08107FC6
- .4byte _08107FD8
- .4byte _08107FDE
- .4byte _08107FE4
- .4byte _08107FF6
- .4byte _08108010
- .4byte _08108020
- .4byte _08108026
- .4byte _08108034
- .4byte _08108046
- .4byte _08108054
- .4byte _0810806E
- .4byte _081080B8
- .4byte _081080C8
- .4byte _081080D2
- .4byte _081080D8
- .4byte _081080DE
-_08107FB0:
- bl SetVBlankHBlankCallbacksToNull
- bl ClearScheduledBgCopiesToVram
- b _08108104
-_08107FBA:
- bl ScanlineEffect_Stop
- b _08108104
-_08107FC0:
- bl FreeAllSpritePalettes
- b _08108104
-_08107FC6:
- bl ResetPaletteFade
- ldr r2, _08107FD4 @ =gPaletteFade
- ldrb r0, [r2, 0x8]
- movs r1, 0x80
- orrs r0, r1
- b _08108102
- .align 2, 0
-_08107FD4: .4byte gPaletteFade
-_08107FD8:
- bl ResetSpriteData
- b _08108104
-_08107FDE:
- bl ResetItemMenuIconState
- b _08108104
-_08107FE4:
- bl MenuHelpers_LinkSomething
- lsls r0, 24
- cmp r0, 0
- beq _08107FF0
- b _08108104
-_08107FF0:
- bl ResetTasks
- b _08108104
-_08107FF6:
- bl sub_81081D0
- lsls r0, 24
- cmp r0, 0
- beq _0810803E
- ldr r0, _0810800C @ =gUnknown_203AD10
- ldr r1, [r0]
- movs r0, 0
- strb r0, [r1, 0x10]
- b _08108104
- .align 2, 0
-_0810800C: .4byte gUnknown_203AD10
-_08108010:
- bl sub_8108240
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0810801E
- b _08108134
-_0810801E:
- b _08108104
-_08108020:
- bl sub_810B858
- b _08108104
-_08108026:
- bl sub_8108E54
- bl sub_8108A68
- bl sub_8108A84
- b _08108104
-_08108034:
- bl sub_81083F4
- lsls r0, 24
- cmp r0, 0
- bne _08108104
-_0810803E:
- bl sub_810813C
- movs r0, 0x1
- b _08108136
-_08108046:
- ldr r0, _08108050 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x6]
- bl sub_810842C
- b _08108104
- .align 2, 0
-_08108050: .4byte gUnknown_203ACFC
-_08108054:
- ldr r0, _08108064 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x4]
- cmp r0, 0x3
- beq _08108068
- bl sub_81087EC
- b _08108104
- .align 2, 0
-_08108064: .4byte gUnknown_203ACFC
-_08108068:
- bl sub_810B994
- b _08108104
-_0810806E:
- ldr r4, _081080AC @ =gUnknown_203ACFC
- ldrb r0, [r4, 0x4]
- bl sub_8108388
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r0, _081080B0 @ =gMultiuseListMenuTemplate
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r1, r4, 0
- adds r1, 0xE
- adds r1, r2, r1
- ldrh r1, [r1]
- adds r4, 0x8
- adds r2, r4
- ldrh r2, [r2]
- bl ListMenuInit
- ldr r2, _081080B4 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r2
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0
- strh r0, [r1, 0x8]
- strh r2, [r1, 0xE]
- strh r2, [r1, 0x18]
- b _08108104
- .align 2, 0
-_081080AC: .4byte gUnknown_203ACFC
-_081080B0: .4byte gMultiuseListMenuTemplate
-_081080B4: .4byte gTasks
-_081080B8:
- ldr r0, _081080C4 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x6]
- bl sub_80984FC
- b _08108104
- .align 2, 0
-_081080C4: .4byte gUnknown_203ACFC
-_081080C8:
- bl sub_8108888
- bl sub_81088D8
- b _08108104
-_081080D2:
- bl sub_80985E4
- b _08108104
-_081080D8:
- bl sub_8108C10
- b _08108104
-_081080DE:
- ldr r0, _081080F0 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x4]
- cmp r0, 0x3
- bne _081080F4
- movs r0, 0x1D
- bl HelpSystem_SetSomeVariable2
- b _081080FA
- .align 2, 0
-_081080F0: .4byte gUnknown_203ACFC
-_081080F4:
- movs r0, 0x9
- bl HelpSystem_SetSomeVariable2
-_081080FA:
- ldr r2, _08108114 @ =gPaletteFade
- ldrb r1, [r2, 0x8]
- movs r0, 0x7F
- ands r0, r1
-_08108102:
- strb r0, [r2, 0x8]
-_08108104:
- ldr r1, _08108118 @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _08108134
- .align 2, 0
-_08108114: .4byte gPaletteFade
-_08108118: .4byte gMain
-_0810811C:
- ldr r0, _0810812C @ =sub_8107EFC
- bl SetVBlankCallback
- ldr r0, _08108130 @ =sub_8107EE0
- bl SetMainCallback2
- movs r0, 0x1
- b _08108136
- .align 2, 0
-_0810812C: .4byte sub_8107EFC
-_08108130: .4byte sub_8107EE0
-_08108134:
- movs r0, 0
-_08108136:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8107F3C
-
- thumb_func_start sub_810813C
-sub_810813C: @ 810813C
- push {lr}
- sub sp, 0x4
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x2
- negs r1, r1
- movs r2, 0
- str r2, [sp]
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _0810816C @ =sub_8108178
- movs r1, 0
- bl CreateTask
- ldr r0, _08108170 @ =sub_8107EFC
- bl SetVBlankCallback
- ldr r0, _08108174 @ =sub_8107EE0
- bl SetMainCallback2
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0810816C: .4byte sub_8108178
-_08108170: .4byte sub_8107EFC
-_08108174: .4byte sub_8107EE0
- thumb_func_end sub_810813C
-
- thumb_func_start sub_8108178
-sub_8108178: @ 8108178
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _081081A4 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0810819C
- ldr r0, _081081A8 @ =gUnknown_203ACFC
- ldr r0, [r0]
- bl SetMainCallback2
- bl sub_8108B04
- adds r0, r4, 0
- bl DestroyTask
-_0810819C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081081A4: .4byte gPaletteFade
-_081081A8: .4byte gUnknown_203ACFC
- thumb_func_end sub_8108178
-
- thumb_func_start sub_81081AC
-sub_81081AC: @ 81081AC
- ldr r0, _081081C0 @ =gUnknown_203AD10
- movs r1, 0
- str r1, [r0]
- ldr r0, _081081C4 @ =gUnknown_203AD14
- str r1, [r0]
- ldr r0, _081081C8 @ =gUnknown_203AD18
- str r1, [r0]
- ldr r0, _081081CC @ =gUnknown_203AD1C
- str r1, [r0]
- bx lr
- .align 2, 0
-_081081C0: .4byte gUnknown_203AD10
-_081081C4: .4byte gUnknown_203AD14
-_081081C8: .4byte gUnknown_203AD18
-_081081CC: .4byte gUnknown_203AD1C
- thumb_func_end sub_81081AC
-
- thumb_func_start sub_81081D0
-sub_81081D0: @ 81081D0
- push {r4,r5,lr}
- bl ResetAllBgsCoordinatesAndBgCntRegs
- ldr r5, _08108230 @ =gUnknown_203AD14
- movs r4, 0x80
- lsls r4, 4
- adds r0, r4, 0
- bl Alloc
- str r0, [r5]
- cmp r0, 0
- beq _08108238
- movs r1, 0
- adds r2, r4, 0
- bl memset
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, _08108234 @ =gUnknown_8452CF4
- movs r0, 0
- movs r2, 0x2
- bl InitBgsFromTemplates
- ldr r1, [r5]
- movs r0, 0x1
- bl SetBgTilemapBuffer
- movs r0, 0x1
- bl ScheduleBgCopyTilemapToVram
- movs r1, 0xC1
- lsls r1, 6
- movs r0, 0
- bl SetGpuReg
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x1
- b _0810823A
- .align 2, 0
-_08108230: .4byte gUnknown_203AD14
-_08108234: .4byte gUnknown_8452CF4
-_08108238:
- movs r0, 0
-_0810823A:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_81081D0
-
- thumb_func_start sub_8108240
-sub_8108240: @ 8108240
- push {r4,lr}
- sub sp, 0x4
- ldr r4, _0810825C @ =gUnknown_203AD10
- ldr r0, [r4]
- ldrb r0, [r0, 0x10]
- cmp r0, 0x5
- bls _08108250
- b _08108368
-_08108250:
- lsls r0, 2
- ldr r1, _08108260 @ =_08108264
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0810825C: .4byte gUnknown_203AD10
-_08108260: .4byte _08108264
- .align 2, 0
-_08108264:
- .4byte _0810827C
- .4byte _08108298
- .4byte _081082D8
- .4byte _08108310
- .4byte _08108340
- .4byte _0810834C
-_0810827C:
- bl ResetTempTileDataBuffers
- ldr r1, _08108294 @ =gUnknown_8E830CC
- movs r0, 0
- str r0, [sp]
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl DecompressAndCopyTileDataToVram
- b _08108352
- .align 2, 0
-_08108294: .4byte gUnknown_8E830CC
-_08108298:
- bl FreeTempTileDataBuffersIfPossible
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0810837C
- ldr r0, _081082B8 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x4]
- cmp r0, 0x3
- beq _081082C4
- ldr r0, _081082BC @ =gUnknown_8E832C0
- ldr r1, _081082C0 @ =gUnknown_203AD14
- ldr r1, [r1]
- bl LZDecompressWram
- b _08108352
- .align 2, 0
-_081082B8: .4byte gUnknown_203ACFC
-_081082BC: .4byte gUnknown_8E832C0
-_081082C0: .4byte gUnknown_203AD14
-_081082C4:
- ldr r0, _081082D0 @ =gUnknown_8E83444
- ldr r1, _081082D4 @ =gUnknown_203AD14
- ldr r1, [r1]
- bl LZDecompressWram
- b _08108352
- .align 2, 0
-_081082D0: .4byte gUnknown_8E83444
-_081082D4: .4byte gUnknown_203AD14
-_081082D8:
- ldr r0, _08108304 @ =gUnknown_8E835B4
- movs r1, 0
- movs r2, 0x60
- bl LoadCompressedPalette
- bl sub_810ADAC
- lsls r0, 24
- cmp r0, 0
- bne _08108352
- ldr r0, _08108308 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- beq _08108352
- ldr r0, _0810830C @ =gUnknown_8E83604
- movs r1, 0
- movs r2, 0x20
- bl LoadCompressedPalette
- b _08108352
- .align 2, 0
-_08108304: .4byte gUnknown_8E835B4
-_08108308: .4byte gSaveBlock2Ptr
-_0810830C: .4byte gUnknown_8E83604
-_08108310:
- bl sub_810ADAC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08108326
- ldr r0, _0810832C @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- cmp r0, 0
- bne _08108334
-_08108326:
- ldr r0, _08108330 @ =gUnknown_83D41E4
- b _0810834E
- .align 2, 0
-_0810832C: .4byte gSaveBlock2Ptr
-_08108330: .4byte gUnknown_83D41E4
-_08108334:
- ldr r0, _0810833C @ =gUnknown_83D41EC
- bl LoadCompressedSpriteSheet
- b _08108352
- .align 2, 0
-_0810833C: .4byte gUnknown_83D41EC
-_08108340:
- ldr r0, _08108348 @ =gUnknown_83D41F4
- bl LoadCompressedSpritePalette
- b _08108352
- .align 2, 0
-_08108348: .4byte gUnknown_83D41F4
-_0810834C:
- ldr r0, _08108360 @ =gBagSwapSpriteSheet
-_0810834E:
- bl LoadCompressedSpriteSheet
-_08108352:
- ldr r0, _08108364 @ =gUnknown_203AD10
- ldr r1, [r0]
- ldrb r0, [r1, 0x10]
- adds r0, 0x1
- strb r0, [r1, 0x10]
- b _0810837C
- .align 2, 0
-_08108360: .4byte gBagSwapSpriteSheet
-_08108364: .4byte gUnknown_203AD10
-_08108368:
- ldr r0, _08108378 @ =gBagSwapSpritePalette
- bl LoadCompressedSpritePalette
- ldr r1, [r4]
- movs r0, 0
- strb r0, [r1, 0x10]
- movs r0, 0x1
- b _0810837E
- .align 2, 0
-_08108378: .4byte gBagSwapSpritePalette
-_0810837C:
- movs r0, 0
-_0810837E:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8108240
-
- thumb_func_start sub_8108388
-sub_8108388: @ 8108388
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x6
- cmp r0, 0x4
- bhi _081083E0
- lsls r0, 2
- ldr r1, _081083A0 @ =_081083A4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_081083A0: .4byte _081083A4
- .align 2, 0
-_081083A4:
- .4byte _081083B8
- .4byte _081083D0
- .4byte _081083D8
- .4byte _081083C0
- .4byte _081083C8
-_081083B8:
- ldr r0, _081083BC @ =sub_810AF9C
- b _081083E2
- .align 2, 0
-_081083BC: .4byte sub_810AF9C
-_081083C0:
- ldr r0, _081083C4 @ =sub_810B1D4
- b _081083E2
- .align 2, 0
-_081083C4: .4byte sub_810B1D4
-_081083C8:
- ldr r0, _081083CC @ =sub_810B5D4
- b _081083E2
- .align 2, 0
-_081083CC: .4byte sub_810B5D4
-_081083D0:
- ldr r0, _081083D4 @ =sub_810B4BC
- b _081083E2
- .align 2, 0
-_081083D4: .4byte sub_810B4BC
-_081083D8:
- ldr r0, _081083DC @ =sub_810B378
- b _081083E2
- .align 2, 0
-_081083DC: .4byte sub_810B378
-_081083E0:
- ldr r0, _081083F0 @ =sub_8108F0C
-_081083E2:
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_081083F0: .4byte sub_8108F0C
- thumb_func_end sub_8108388
-
- thumb_func_start sub_81083F4
-sub_81083F4: @ 81083F4
- push {r4,lr}
- ldr r4, _08108418 @ =gUnknown_203AD18
- movs r0, 0xAC
- lsls r0, 1
- bl Alloc
- str r0, [r4]
- cmp r0, 0
- beq _08108424
- ldr r4, _0810841C @ =gUnknown_203AD1C
- ldr r0, _08108420 @ =0x00000331
- bl Alloc
- str r0, [r4]
- cmp r0, 0
- beq _08108424
- movs r0, 0x1
- b _08108426
- .align 2, 0
-_08108418: .4byte gUnknown_203AD18
-_0810841C: .4byte gUnknown_203AD1C
-_08108420: .4byte 0x00000331
-_08108424:
- movs r0, 0
-_08108426:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81083F4
-
- thumb_func_start sub_810842C
-sub_810842C: @ 810842C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, r7, 3
- ldr r0, _0810853C @ =gBagPockets
- adds r1, r0
- mov r8, r1
- movs r6, 0
- ldr r0, _08108540 @ =gUnknown_203AD10
- ldr r0, [r0]
- adds r0, 0xA
- adds r0, r7
- ldrb r0, [r0]
- cmp r6, r0
- bcs _0810848C
- ldr r5, _08108544 @ =gUnknown_203AD1C
-_08108450:
- lsls r2, r6, 2
- adds r4, r2, r6
- lsls r4, 2
- subs r4, r6
- ldr r0, [r5]
- adds r0, r4
- mov r3, r8
- ldr r1, [r3]
- adds r2, r1
- ldrh r1, [r2]
- bl sub_8108560
- ldr r0, _08108548 @ =gUnknown_203AD18
- ldr r0, [r0]
- lsls r1, r6, 3
- adds r1, r0
- ldr r0, [r5]
- adds r0, r4
- str r0, [r1]
- str r6, [r1, 0x4]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r0, _08108540 @ =gUnknown_203AD10
- ldr r0, [r0]
- adds r0, 0xA
- adds r0, r7
- ldrb r0, [r0]
- cmp r6, r0
- bcc _08108450
-_0810848C:
- ldr r5, _08108544 @ =gUnknown_203AD1C
- lsls r4, r6, 2
- adds r4, r6
- lsls r4, 2
- subs r4, r6
- ldr r0, [r5]
- adds r0, r4
- ldr r1, _0810854C @ =gUnknown_8452F60
- bl StringCopy
- ldr r0, [r5]
- adds r0, r4
- ldr r1, _08108550 @ =gFameCheckerText_Cancel
- bl StringAppend
- ldr r0, _08108548 @ =gUnknown_203AD18
- ldr r2, [r0]
- lsls r1, r6, 3
- adds r1, r2
- ldr r0, [r5]
- adds r0, r4
- str r0, [r1]
- str r6, [r1, 0x4]
- ldr r3, _08108554 @ =gMultiuseListMenuTemplate
- str r2, [r3]
- ldr r0, _08108540 @ =gUnknown_203AD10
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0xA
- adds r0, r7
- ldrb r0, [r0]
- adds r0, 0x1
- movs r1, 0
- strh r0, [r3, 0xC]
- strb r1, [r3, 0x10]
- strb r1, [r3, 0x11]
- movs r0, 0x9
- strb r0, [r3, 0x12]
- movs r0, 0x1
- strb r0, [r3, 0x13]
- ldrb r0, [r3, 0x16]
- movs r4, 0x8
- negs r4, r4
- ands r4, r0
- movs r0, 0x39
- negs r0, r0
- ands r4, r0
- movs r0, 0x10
- orrs r4, r0
- strb r4, [r3, 0x16]
- ldrb r0, [r3, 0x14]
- movs r1, 0x10
- negs r1, r1
- ands r1, r0
- movs r5, 0x2
- orrs r1, r5
- strb r1, [r3, 0x14]
- adds r2, 0xD
- adds r2, r7
- ldrb r0, [r2]
- strh r0, [r3, 0xE]
- ldrb r0, [r3, 0x17]
- movs r2, 0x40
- negs r2, r2
- ands r2, r0
- orrs r2, r5
- movs r0, 0xF
- ands r1, r0
- movs r0, 0x20
- orrs r1, r0
- strb r1, [r3, 0x14]
- movs r0, 0x30
- strb r0, [r3, 0x15]
- ldr r0, _08108558 @ =sub_81085A4
- str r0, [r3, 0x4]
- ldr r0, _0810855C @ =sub_8108654
- str r0, [r3, 0x8]
- movs r0, 0x3F
- ands r2, r0
- strb r2, [r3, 0x17]
- ands r4, r0
- strb r4, [r3, 0x16]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810853C: .4byte gBagPockets
-_08108540: .4byte gUnknown_203AD10
-_08108544: .4byte gUnknown_203AD1C
-_08108548: .4byte gUnknown_203AD18
-_0810854C: .4byte gUnknown_8452F60
-_08108550: .4byte gFameCheckerText_Cancel
-_08108554: .4byte gMultiuseListMenuTemplate
-_08108558: .4byte sub_81085A4
-_0810855C: .4byte sub_8108654
- thumb_func_end sub_810842C
-
- thumb_func_start sub_8108560
-sub_8108560: @ 8108560
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r1, 16
- lsrs r5, r1, 16
- ldr r0, _0810857C @ =0xfe940000
- adds r1, r0
- lsrs r1, 16
- cmp r1, 0x1
- bhi _08108584
- ldr r1, _08108580 @ =gUnknown_8452F66
- adds r0, r4, 0
- bl StringCopy
- b _0810858C
- .align 2, 0
-_0810857C: .4byte 0xfe940000
-_08108580: .4byte gUnknown_8452F66
-_08108584:
- ldr r1, _081085A0 @ =gUnknown_8452F60
- adds r0, r4, 0
- bl StringCopy
-_0810858C:
- adds r0, r5, 0
- bl ItemId_GetName
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringAppend
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081085A0: .4byte gUnknown_8452F60
- thumb_func_end sub_8108560
-
- thumb_func_start sub_81085A4
-sub_81085A4: @ 81085A4
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x1
- beq _081085BA
- movs r0, 0xF5
- bl PlaySE
- bl sub_8098580
-_081085BA:
- ldr r4, _08108604 @ =gUnknown_203AD10
- ldr r1, [r4]
- ldrb r0, [r1, 0x4]
- cmp r0, 0xFF
- bne _08108644
- ldrb r1, [r1, 0x5]
- lsls r1, 26
- lsrs r1, 30
- movs r0, 0x1
- eors r0, r1
- bl DestroyItemMenuIcon
- ldr r2, [r4]
- ldr r0, _08108608 @ =gUnknown_203ACFC
- ldrh r1, [r0, 0x6]
- adds r0, r2, 0
- adds r0, 0xA
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, r5
- beq _0810860C
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r5, 16
- lsrs r1, 16
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r0, 16
- ldr r1, [r4]
- ldrb r1, [r1, 0x5]
- lsls r1, 26
- lsrs r1, 30
- bl CreateItemMenuIcon
- b _08108618
- .align 2, 0
-_08108604: .4byte gUnknown_203AD10
-_08108608: .4byte gUnknown_203ACFC
-_0810860C:
- ldr r0, _0810864C @ =0x00000177
- ldrb r1, [r2, 0x5]
- lsls r1, 26
- lsrs r1, 30
- bl CreateItemMenuIcon
-_08108618:
- ldr r4, _08108650 @ =gUnknown_203AD10
- ldr r3, [r4]
- ldrb r2, [r3, 0x5]
- lsls r0, r2, 26
- lsrs r0, 30
- movs r1, 0x1
- eors r1, r0
- lsls r1, 4
- movs r0, 0x31
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x5]
- ldr r0, [r4]
- ldrb r1, [r0, 0x5]
- movs r0, 0xC0
- ands r0, r1
- cmp r0, 0
- bne _08108644
- adds r0, r5, 0
- bl sub_8108818
-_08108644:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810864C: .4byte 0x00000177
-_08108650: .4byte gUnknown_203AD10
- thumb_func_end sub_81085A4
-
- thumb_func_start sub_8108654
-sub_8108654: @ 8108654
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x14
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r2, 24
- lsrs r6, r2, 24
- ldr r0, _08108684 @ =gUnknown_203AD10
- ldr r0, [r0]
- ldrb r1, [r0, 0x4]
- cmp r1, 0xFF
- beq _08108690
- lsls r0, r4, 24
- lsrs r0, 24
- cmp r1, r0
- bne _08108688
- adds r0, r6, 0
- movs r1, 0x2
- bl bag_menu_print_cursor
- b _08108690
- .align 2, 0
-_08108684: .4byte gUnknown_203AD10
-_08108688:
- adds r0, r6, 0
- movs r1, 0xFF
- bl bag_menu_print_cursor
-_08108690:
- movs r0, 0x2
- negs r0, r0
- cmp r4, r0
- beq _08108752
- ldr r0, _08108718 @ =gUnknown_203AD10
- ldr r0, [r0]
- ldr r5, _0810871C @ =gUnknown_203ACFC
- ldrh r1, [r5, 0x6]
- adds r0, 0xA
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, r4
- beq _08108752
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r0, 24
- lsls r4, 16
- lsrs r4, 16
- adds r1, r4, 0
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r7, r0, 16
- ldrb r0, [r5, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, 0
- bl BagGetQuantityByPocketPosition
- lsls r0, 16
- lsrs r4, r0, 16
- ldrh r0, [r5, 0x6]
- cmp r0, 0x1
- beq _0810872C
- adds r0, r7, 0
- bl itemid_is_unique
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _0810872C
- ldr r0, _08108720 @ =gStringVar1
- adds r1, r4, 0
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r4, _08108724 @ =gStringVar4
- ldr r1, _08108728 @ =gText_TimesStrVar1
- adds r0, r4, 0
- bl StringExpandPlaceholders
- str r6, [sp]
- str r5, [sp, 0x4]
- str r5, [sp, 0x8]
- movs r0, 0xFF
- str r0, [sp, 0xC]
- movs r0, 0x1
- str r0, [sp, 0x10]
- mov r0, r8
- movs r1, 0
- adds r2, r4, 0
- movs r3, 0x6E
- bl sub_810B8F0
- b _08108752
- .align 2, 0
-_08108718: .4byte gUnknown_203AD10
-_0810871C: .4byte gUnknown_203ACFC
-_08108720: .4byte gStringVar1
-_08108724: .4byte gStringVar4
-_08108728: .4byte gText_TimesStrVar1
-_0810872C:
- ldr r0, _08108760 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, _08108764 @ =0x00000296
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, 0
- beq _08108752
- cmp r0, r7
- bne _08108752
- ldr r1, _08108768 @ =gUnknown_8452F7C
- movs r0, 0x18
- str r0, [sp]
- movs r0, 0x10
- str r0, [sp, 0x4]
- mov r0, r8
- movs r2, 0x70
- adds r3, r6, 0
- bl BlitBitmapToWindow
-_08108752:
- add sp, 0x14
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08108760: .4byte gSaveBlock1Ptr
-_08108764: .4byte 0x00000296
-_08108768: .4byte gUnknown_8452F7C
- thumb_func_end sub_8108654
-
- thumb_func_start bag_menu_print_cursor_
-bag_menu_print_cursor_: @ 810876C
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r4, 24
- lsrs r4, 24
- bl ListMenuGetYCoordForPrintingArrowCursor
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, 0
- bl bag_menu_print_cursor
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end bag_menu_print_cursor_
-
- thumb_func_start bag_menu_print_cursor
-bag_menu_print_cursor: @ 810878C
- push {r4,r5,lr}
- sub sp, 0x14
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0xFF
- bne _081087C8
- movs r0, 0x2
- movs r1, 0
- bl GetMenuCursorDimensionByFont
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x2
- movs r1, 0x1
- bl GetMenuCursorDimensionByFont
- lsls r0, 24
- lsrs r0, 24
- str r4, [sp]
- str r0, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- movs r2, 0x1
- adds r3, r5, 0
- bl FillWindowPixelRect
- b _081087DE
-_081087C8:
- ldr r2, _081087E8 @ =gFameCheckerText_ListMenuCursor
- str r5, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- str r0, [sp, 0xC]
- str r1, [sp, 0x10]
- movs r1, 0x2
- movs r3, 0x1
- bl sub_810B8F0
-_081087DE:
- add sp, 0x14
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081087E8: .4byte gFameCheckerText_ListMenuCursor
- thumb_func_end bag_menu_print_cursor
-
- thumb_func_start sub_81087EC
-sub_81087EC: @ 81087EC
- push {lr}
- movs r0, 0x2
- movs r1, 0
- bl FillWindowPixelBuffer
- ldr r2, _08108810 @ =gUnknown_8452CFC
- ldr r0, _08108814 @ =gUnknown_203ACFC
- ldrh r1, [r0, 0x6]
- lsls r0, r1, 2
- adds r0, r2
- ldr r0, [r0]
- lsls r1, 24
- lsrs r1, 24
- bl sub_810B958
- pop {r0}
- bx r0
- .align 2, 0
-_08108810: .4byte gUnknown_8452CFC
-_08108814: .4byte gUnknown_203ACFC
- thumb_func_end sub_81087EC
-
- thumb_func_start sub_8108818
-sub_8108818: @ 8108818
- push {r4,lr}
- sub sp, 0x14
- adds r2, r0, 0
- ldr r0, _0810884C @ =gUnknown_203AD10
- ldr r0, [r0]
- ldr r1, _08108850 @ =gUnknown_203ACFC
- ldrh r1, [r1, 0x6]
- adds r0, 0xA
- adds r0, r1
- ldrb r0, [r0]
- cmp r2, r0
- beq _08108854
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r2, 16
- lsrs r1, 16
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r0, 16
- bl ItemId_GetDescription
- adds r4, r0, 0
- b _08108856
- .align 2, 0
-_0810884C: .4byte gUnknown_203AD10
-_08108850: .4byte gUnknown_203ACFC
-_08108854:
- ldr r4, _08108884 @ =gUnknown_84162F5
-_08108856:
- movs r0, 0x1
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0x3
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- str r0, [sp, 0xC]
- str r0, [sp, 0x10]
- movs r0, 0x1
- movs r1, 0x2
- adds r2, r4, 0
- movs r3, 0
- bl sub_810B8F0
- add sp, 0x14
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08108884: .4byte gUnknown_84162F5
- thumb_func_end sub_8108818
-
- thumb_func_start sub_8108888
-sub_8108888: @ 8108888
- push {r4,lr}
- sub sp, 0x10
- ldr r4, _081088D0 @ =gUnknown_203AD10
- ldr r1, [r4]
- ldr r2, _081088D4 @ =gUnknown_203ACFC
- ldrh r3, [r2, 0x6]
- adds r0, r1, 0
- adds r0, 0xA
- adds r0, r3
- ldrb r0, [r0]
- adds r1, 0xD
- adds r1, r3
- ldrb r1, [r1]
- subs r0, r1
- adds r0, 0x1
- str r0, [sp]
- movs r0, 0x6E
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- ldrh r0, [r2, 0x6]
- lsls r0, 1
- adds r2, 0xE
- adds r0, r2
- str r0, [sp, 0xC]
- movs r0, 0x2
- movs r1, 0xA0
- movs r2, 0x8
- movs r3, 0x68
- bl AddScrollIndicatorArrowPairParameterized
- ldr r1, [r4]
- strb r0, [r1, 0x8]
- add sp, 0x10
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081088D0: .4byte gUnknown_203AD10
-_081088D4: .4byte gUnknown_203ACFC
- thumb_func_end sub_8108888
-
- thumb_func_start sub_81088D8
-sub_81088D8: @ 81088D8
- push {r4,lr}
- ldr r4, _081088FC @ =gUnknown_203AD10
- ldr r0, [r4]
- ldrb r1, [r0, 0x5]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x1
- beq _081088F4
- ldr r0, _08108900 @ =gUnknown_8452F6C
- ldr r1, _08108904 @ =gUnknown_203AD02
- bl AddScrollIndicatorArrowPair
- ldr r1, [r4]
- strb r0, [r1, 0x9]
-_081088F4:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081088FC: .4byte gUnknown_203AD10
-_08108900: .4byte gUnknown_8452F6C
-_08108904: .4byte gUnknown_203AD02
- thumb_func_end sub_81088D8
-
- thumb_func_start sub_8108908
-sub_8108908: @ 8108908
- push {r4,lr}
- sub sp, 0x10
- ldr r4, _0810893C @ =gUnknown_203AD10
- ldr r1, [r4]
- movs r0, 0x1
- strh r0, [r1, 0x6]
- movs r0, 0x2
- str r0, [sp]
- movs r0, 0x6E
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- adds r1, 0x6
- str r1, [sp, 0xC]
- movs r0, 0x2
- movs r1, 0x98
- movs r2, 0x48
- movs r3, 0x68
- bl AddScrollIndicatorArrowPairParameterized
- ldr r1, [r4]
- strb r0, [r1, 0x8]
- add sp, 0x10
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0810893C: .4byte gUnknown_203AD10
- thumb_func_end sub_8108908
-
- thumb_func_start sub_8108940
-sub_8108940: @ 8108940
- push {r4,lr}
- sub sp, 0x10
- ldr r4, _08108974 @ =gUnknown_203AD10
- ldr r1, [r4]
- movs r0, 0x1
- strh r0, [r1, 0x6]
- movs r0, 0x2
- str r0, [sp]
- movs r0, 0x6E
- str r0, [sp, 0x4]
- str r0, [sp, 0x8]
- adds r1, 0x6
- str r1, [sp, 0xC]
- movs r0, 0x2
- movs r1, 0xD4
- movs r2, 0x78
- movs r3, 0x98
- bl AddScrollIndicatorArrowPairParameterized
- ldr r1, [r4]
- strb r0, [r1, 0x8]
- add sp, 0x10
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08108974: .4byte gUnknown_203AD10
- thumb_func_end sub_8108940
-
- thumb_func_start sub_8108978
-sub_8108978: @ 8108978
- push {r4,lr}
- ldr r4, _08108998 @ =gUnknown_203AD10
- ldr r1, [r4]
- ldrb r0, [r1, 0x8]
- cmp r0, 0xFF
- beq _0810898E
- bl RemoveScrollIndicatorArrowPair
- ldr r1, [r4]
- movs r0, 0xFF
- strb r0, [r1, 0x8]
-_0810898E:
- bl sub_810899C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08108998: .4byte gUnknown_203AD10
- thumb_func_end sub_8108978
-
- thumb_func_start sub_810899C
-sub_810899C: @ 810899C
- push {r4,lr}
- ldr r4, _081089B8 @ =gUnknown_203AD10
- ldr r1, [r4]
- ldrb r0, [r1, 0x9]
- cmp r0, 0xFF
- beq _081089B2
- bl RemoveScrollIndicatorArrowPair
- ldr r1, [r4]
- movs r0, 0xFF
- strb r0, [r1, 0x9]
-_081089B2:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081089B8: .4byte gUnknown_203AD10
- thumb_func_end sub_810899C
-
- thumb_func_start sub_81089BC
-sub_81089BC: @ 81089BC
- push {r4,r5,lr}
- ldr r0, _081089F0 @ =gUnknown_203ACFC
- movs r2, 0
- movs r1, 0
- strh r1, [r0, 0x6]
- strb r2, [r0, 0x5]
- movs r2, 0
- adds r5, r0, 0
- adds r5, 0x8
- movs r3, 0
- adds r4, r0, 0
- adds r4, 0xE
-_081089D4:
- lsls r1, r2, 1
- adds r0, r1, r5
- strh r3, [r0]
- adds r1, r4
- strh r3, [r1]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x2
- bls _081089D4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081089F0: .4byte gUnknown_203ACFC
- thumb_func_end sub_81089BC
-
- thumb_func_start sub_81089F4
-sub_81089F4: @ 81089F4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r2, _08108A60 @ =gUnknown_203ACFC
- lsls r1, r4, 1
- adds r0, r2, 0
- adds r0, 0xE
- adds r3, r1, r0
- ldrh r0, [r3]
- adds r7, r2, 0
- ldr r6, _08108A64 @ =gUnknown_203AD10
- cmp r0, 0
- beq _08108A2E
- adds r2, r0, 0
- ldr r1, [r6]
- adds r0, r1, 0
- adds r0, 0xD
- adds r0, r4
- ldrb r5, [r0]
- adds r2, r5
- adds r1, 0xA
- adds r1, r4
- ldrb r1, [r1]
- adds r0, r1, 0x1
- cmp r2, r0
- ble _08108A2E
- subs r0, r5, 0x1
- subs r0, r1, r0
- strh r0, [r3]
-_08108A2E:
- lsls r2, r4, 1
- adds r0, r7, 0
- adds r0, 0xE
- adds r0, r2, r0
- ldrh r1, [r0]
- adds r0, r7, 0
- adds r0, 0x8
- adds r2, r0
- ldrh r0, [r2]
- adds r1, r0
- ldr r0, [r6]
- adds r0, 0xA
- adds r0, r4
- ldrb r0, [r0]
- adds r3, r0, 0x1
- cmp r1, r3
- blt _08108A58
- cmp r3, 0x1
- bgt _08108A56
- movs r0, 0
-_08108A56:
- strh r0, [r2]
-_08108A58:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08108A60: .4byte gUnknown_203ACFC
-_08108A64: .4byte gUnknown_203AD10
- thumb_func_end sub_81089F4
-
- thumb_func_start sub_8108A68
-sub_8108A68: @ 8108A68
- push {r4,lr}
- movs r4, 0
-_08108A6C:
- adds r0, r4, 0
- bl sub_81089F4
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2
- bls _08108A6C
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8108A68
-
- thumb_func_start sub_8108A84
-sub_8108A84: @ 8108A84
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r6, 0
- ldr r0, _08108AF8 @ =gUnknown_203AD04
- mov r8, r0
-_08108A90:
- lsls r2, r6, 1
- mov r3, r8
- adds r1, r2, r3
- ldrh r0, [r1]
- adds r7, r6, 0x1
- cmp r0, 0x3
- bls _08108AE6
- movs r5, 0
- subs r0, 0x3
- cmp r5, r0
- bgt _08108AE6
- ldr r0, _08108AFC @ =gUnknown_203AD0A
- ldr r3, _08108B00 @ =gUnknown_203AD10
- mov r12, r3
- adds r4, r2, r0
- adds r3, r1, 0
-_08108AB0:
- ldrh r2, [r4]
- mov r0, r12
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0xD
- adds r0, r6
- ldrb r0, [r0]
- adds r2, r0
- adds r1, 0xA
- adds r1, r6
- ldrb r0, [r1]
- adds r0, 0x1
- cmp r2, r0
- beq _08108AE6
- ldrh r0, [r3]
- subs r0, 0x1
- strh r0, [r3]
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- ldrh r0, [r3]
- subs r0, 0x3
- cmp r5, r0
- ble _08108AB0
-_08108AE6:
- lsls r0, r7, 24
- lsrs r6, r0, 24
- cmp r6, 0x2
- bls _08108A90
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08108AF8: .4byte gUnknown_203AD04
-_08108AFC: .4byte gUnknown_203AD0A
-_08108B00: .4byte gUnknown_203AD10
- thumb_func_end sub_8108A84
-
- thumb_func_start sub_8108B04
-sub_8108B04: @ 8108B04
- push {lr}
- ldr r0, _08108B40 @ =gUnknown_203AD10
- ldr r0, [r0]
- cmp r0, 0
- beq _08108B12
- bl Free
-_08108B12:
- ldr r0, _08108B44 @ =gUnknown_203AD14
- ldr r0, [r0]
- cmp r0, 0
- beq _08108B1E
- bl Free
-_08108B1E:
- ldr r0, _08108B48 @ =gUnknown_203AD18
- ldr r0, [r0]
- cmp r0, 0
- beq _08108B2A
- bl Free
-_08108B2A:
- ldr r0, _08108B4C @ =gUnknown_203AD1C
- ldr r0, [r0]
- cmp r0, 0
- beq _08108B36
- bl Free
-_08108B36:
- bl FreeAllWindowBuffers
- pop {r0}
- bx r0
- .align 2, 0
-_08108B40: .4byte gUnknown_203AD10
-_08108B44: .4byte gUnknown_203AD14
-_08108B48: .4byte gUnknown_203AD18
-_08108B4C: .4byte gUnknown_203AD1C
- thumb_func_end sub_8108B04
-
- thumb_func_start ItemMenu_StartFadeToExitCallback
-ItemMenu_StartFadeToExitCallback: @ 8108B50
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x2
- negs r1, r1
- movs r2, 0
- str r2, [sp]
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _08108B84 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08108B88 @ =sub_8108B8C
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08108B84: .4byte gTasks
-_08108B88: .4byte sub_8108B8C
- thumb_func_end ItemMenu_StartFadeToExitCallback
-
- thumb_func_start sub_8108B8C
-sub_8108B8C: @ 8108B8C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _08108BE0 @ =gTasks+0x8
- adds r4, r0, r1
- ldr r0, _08108BE4 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08108C08
- ldr r0, _08108BE8 @ =sub_8108CFC
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08108C08
- ldrb r0, [r4]
- ldr r4, _08108BEC @ =gUnknown_203ACFC
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r1, r4, 0
- adds r1, 0xE
- adds r1, r2, r1
- adds r3, r4, 0
- adds r3, 0x8
- adds r2, r3
- bl DestroyListMenuTask
- ldr r0, _08108BF0 @ =gUnknown_203AD10
- ldr r0, [r0]
- ldr r0, [r0]
- cmp r0, 0
- beq _08108BF4
- bl SetMainCallback2
- b _08108BFA
- .align 2, 0
-_08108BE0: .4byte gTasks+0x8
-_08108BE4: .4byte gPaletteFade
-_08108BE8: .4byte sub_8108CFC
-_08108BEC: .4byte gUnknown_203ACFC
-_08108BF0: .4byte gUnknown_203AD10
-_08108BF4:
- ldr r0, [r4]
- bl SetMainCallback2
-_08108BFA:
- bl sub_8108978
- bl sub_8108B04
- adds r0, r5, 0
- bl DestroyTask
-_08108C08:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8108B8C
-
- thumb_func_start sub_8108C10
-sub_8108C10: @ 8108C10
- push {r4,r5,lr}
- sub sp, 0x8
- movs r5, 0
- add r0, sp, 0x4
- strh r5, [r0]
- movs r1, 0
- movs r2, 0x2
- bl LoadPalette
- movs r0, 0x48
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x4A
- movs r1, 0x3F
- bl SetGpuReg
- movs r4, 0x1
- negs r4, r4
- adds r0, r4, 0
- movs r1, 0x10
- movs r2, 0
- bl BlendPalettes
- str r5, [sp]
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r4, _08108C68 @ =gUnknown_203ACFC
- ldrb r0, [r4, 0x5]
- cmp r0, 0x1
- bne _08108C6C
- movs r0, 0x40
- movs r1, 0xF0
- bl SetGpuReg
- movs r0, 0x44
- movs r1, 0
- bl SetGpuReg
- b _08108C9E
- .align 2, 0
-_08108C68: .4byte gUnknown_203ACFC
-_08108C6C:
- movs r0, 0x40
- movs r1, 0xF0
- bl SetGpuReg
- movs r0, 0x44
- movs r1, 0xA0
- bl SetGpuReg
- ldr r0, _08108CA8 @ =sub_8108CFC
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08108CAC @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r0, 0xC0
- strh r0, [r1, 0x8]
- ldr r0, _08108CB0 @ =0x0000fff0
- strh r0, [r1, 0xA]
- movs r0, 0x1
- strb r0, [r4, 0x5]
-_08108C9E:
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08108CA8: .4byte sub_8108CFC
-_08108CAC: .4byte gTasks
-_08108CB0: .4byte 0x0000fff0
- thumb_func_end sub_8108C10
-
- thumb_func_start sub_8108CB4
-sub_8108CB4: @ 8108CB4
- push {lr}
- ldr r0, _08108CE0 @ =sub_8108CFC
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08108CE4 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r2, 0
- ldr r0, _08108CE8 @ =0x0000fff0
- strh r0, [r1, 0x8]
- movs r0, 0x10
- strh r0, [r1, 0xA]
- ldr r0, _08108CEC @ =gUnknown_203ACFC
- strb r2, [r0, 0x5]
- pop {r0}
- bx r0
- .align 2, 0
-_08108CE0: .4byte sub_8108CFC
-_08108CE4: .4byte gTasks
-_08108CE8: .4byte 0x0000fff0
-_08108CEC: .4byte gUnknown_203ACFC
- thumb_func_end sub_8108CB4
-
- thumb_func_start CB2_SetUpReshowBattleScreenAfterMenu
-CB2_SetUpReshowBattleScreenAfterMenu: @ 8108CF0
- ldr r1, _08108CF8 @ =gUnknown_203ACFC
- movs r0, 0
- strb r0, [r1, 0x5]
- bx lr
- .align 2, 0
-_08108CF8: .4byte gUnknown_203ACFC
- thumb_func_end CB2_SetUpReshowBattleScreenAfterMenu
-
- thumb_func_start sub_8108CFC
-sub_8108CFC: @ 8108CFC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _08108D28 @ =gTasks+0x8
- adds r4, r0, r1
- ldrh r0, [r4, 0x2]
- ldrh r1, [r4]
- adds r0, r1
- strh r0, [r4]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA0
- ble _08108D2C
- movs r0, 0x44
- movs r1, 0xA0
- bl SetGpuReg
- b _08108D34
- .align 2, 0
-_08108D28: .4byte gTasks+0x8
-_08108D2C:
- ldrh r1, [r4]
- movs r0, 0x44
- bl SetGpuReg
-_08108D34:
- movs r2, 0x2
- ldrsh r1, [r4, r2]
- cmp r1, 0x10
- bne _08108D44
- movs r2, 0
- ldrsh r0, [r4, r2]
- cmp r0, 0xA0
- beq _08108D54
-_08108D44:
- movs r0, 0x10
- negs r0, r0
- cmp r1, r0
- bne _08108D5A
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08108D5A
-_08108D54:
- adds r0, r5, 0
- bl DestroyTask
-_08108D5A:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8108CFC
-
- thumb_func_start ItemMenu_MoveItemSlotToNewPositionInArray
-ItemMenu_MoveItemSlotToNewPositionInArray: @ 8108D60
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r3, r2, 0
- cmp r1, r3
- beq _08108DC0
- lsls r0, r1, 2
- adds r0, r4
- ldr r6, [r0]
- cmp r3, r1
- bls _08108D98
- subs r3, 0x1
- lsls r1, 16
- lsls r0, r3, 16
- asrs r2, r0, 16
- cmp r1, r0
- bge _08108DBA
- adds r5, r2, 0
-_08108D82:
- asrs r2, r1, 16
- lsls r0, r2, 2
- adds r0, r4
- ldr r1, [r0, 0x4]
- str r1, [r0]
- adds r2, 0x1
- lsls r1, r2, 16
- asrs r0, r1, 16
- cmp r0, r5
- blt _08108D82
- b _08108DBA
-_08108D98:
- lsls r1, 16
- lsls r0, r3, 16
- asrs r2, r0, 16
- cmp r1, r0
- ble _08108DBA
- adds r5, r2, 0
-_08108DA4:
- asrs r2, r1, 16
- lsls r1, r2, 2
- adds r1, r4
- subs r0, r1, 0x4
- ldr r0, [r0]
- str r0, [r1]
- subs r2, 0x1
- lsls r1, r2, 16
- asrs r0, r1, 16
- cmp r0, r5
- bgt _08108DA4
-_08108DBA:
- lsls r0, r3, 2
- adds r0, r4
- str r6, [r0]
-_08108DC0:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end ItemMenu_MoveItemSlotToNewPositionInArray
-
- thumb_func_start sub_8108DC8
-sub_8108DC8: @ 8108DC8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, r5, 3
- ldr r0, _08108E3C @ =gBagPockets
- adds r4, r1, r0
- ldr r0, [r4]
- ldrb r1, [r4, 0x4]
- bl BagPocketCompaction
- ldr r3, _08108E40 @ =gUnknown_203AD10
- ldr r0, [r3]
- adds r0, 0xA
- adds r0, r5
- movs r1, 0
- strb r1, [r0]
- movs r2, 0
- ldrb r0, [r4, 0x4]
- cmp r2, r0
- bcs _08108E1C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _08108E1C
-_08108DF8:
- ldr r0, [r3]
- adds r0, 0xA
- adds r0, r5
- ldrb r1, [r0]
- adds r1, 0x1
- strb r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- ldrb r0, [r4, 0x4]
- cmp r2, r0
- bcs _08108E1C
- ldr r0, [r4]
- lsls r1, r2, 2
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- bne _08108DF8
-_08108E1C:
- ldr r0, _08108E40 @ =gUnknown_203AD10
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0xA
- adds r0, r5
- ldrb r0, [r0]
- adds r2, r0, 0x1
- cmp r2, 0x6
- ble _08108E44
- adds r0, r1, 0
- adds r0, 0xD
- adds r0, r5
- movs r1, 0x6
- strb r1, [r0]
- b _08108E4C
- .align 2, 0
-_08108E3C: .4byte gBagPockets
-_08108E40: .4byte gUnknown_203AD10
-_08108E44:
- adds r0, r1, 0
- adds r0, 0xD
- adds r0, r5
- strb r2, [r0]
-_08108E4C:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8108DC8
-
- thumb_func_start sub_8108E54
-sub_8108E54: @ 8108E54
- push {r4,lr}
- movs r4, 0
-_08108E58:
- adds r0, r4, 0
- bl sub_8108DC8
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2
- bls _08108E58
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8108E54
-
- thumb_func_start DisplayItemMessageInBag
-DisplayItemMessageInBag: @ 8108E70
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x10
- adds r5, r0, 0
- adds r6, r1, 0
- mov r8, r2
- mov r9, r3
- lsls r5, 24
- lsrs r5, 24
- lsls r6, 24
- lsrs r6, 24
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- ldr r0, _08108EDC @ =gTasks+0x8
- adds r4, r0
- movs r0, 0x5
- bl sub_810BA70
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x14]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- bl GetTextSpeedSetting
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r4, 0x14]
- str r6, [sp]
- str r0, [sp, 0x4]
- mov r0, r8
- str r0, [sp, 0x8]
- mov r0, r9
- str r0, [sp, 0xC]
- adds r0, r5, 0
- movs r2, 0x6D
- movs r3, 0xD
- bl DisplayMessageAndContinueTask
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- add sp, 0x10
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08108EDC: .4byte gTasks+0x8
- thumb_func_end DisplayItemMessageInBag
-
- thumb_func_start ItemMenu_SetExitCallback
-ItemMenu_SetExitCallback: @ 8108EE0
- ldr r1, _08108EE8 @ =gUnknown_203AD10
- ldr r1, [r1]
- str r0, [r1]
- bx lr
- .align 2, 0
-_08108EE8: .4byte gUnknown_203AD10
- thumb_func_end ItemMenu_SetExitCallback
-
- thumb_func_start sub_8108EEC
-sub_8108EEC: @ 8108EEC
- lsls r0, 24
- ldr r1, _08108F08 @ =gUnknown_203ACFC
- lsrs r0, 23
- adds r2, r1, 0
- adds r2, 0xE
- adds r2, r0, r2
- adds r1, 0x8
- adds r0, r1
- ldrb r0, [r0]
- ldrb r2, [r2]
- adds r0, r2
- lsls r0, 24
- lsrs r0, 24
- bx lr
- .align 2, 0
-_08108F08: .4byte gUnknown_203ACFC
- thumb_func_end sub_8108EEC
-
- thumb_func_start sub_8108F0C
-sub_8108F0C: @ 8108F0C
- push {r4-r7,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, _08108F78 @ =gTasks+0x8
- adds r7, r0, r1
- ldr r0, _08108F7C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08108F2C
- b _081090C6
-_08108F2C:
- ldr r0, _08108F80 @ =sub_8108CFC
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08108F3C
- b _081090C6
-_08108F3C:
- bl sub_80BF72C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08108F4A
- b _081090C6
-_08108F4A:
- ldr r4, _08108F84 @ =gUnknown_203ACFC
- ldrb r1, [r4, 0x6]
- adds r0, r6, 0
- bl sub_8109168
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08108F8C
- cmp r0, 0x2
- beq _08108F94
- ldr r0, _08108F88 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08108FE4
- adds r5, r4, 0
- ldrb r0, [r5, 0x4]
- cmp r0, 0
- bne _08108FE4
- b _08108FA0
- .align 2, 0
-_08108F78: .4byte gTasks+0x8
-_08108F7C: .4byte gPaletteFade
-_08108F80: .4byte sub_8108CFC
-_08108F84: .4byte gUnknown_203ACFC
-_08108F88: .4byte gMain
-_08108F8C:
- movs r1, 0x1
- negs r1, r1
- adds r0, r6, 0
- b _08108F98
-_08108F94:
- adds r0, r6, 0
- movs r1, 0x1
-_08108F98:
- movs r2, 0
- bl sub_81091D0
- b _081090C6
-_08108FA0:
- ldrb r0, [r7]
- mov r4, sp
- adds r4, 0x2
- mov r1, sp
- adds r2, r4, 0
- bl ListMenuGetScrollAndRow
- mov r0, sp
- ldrh r1, [r0]
- ldrh r0, [r4]
- adds r1, r0
- ldr r0, _08108FE0 @ =gUnknown_203AD10
- ldr r0, [r0]
- adds r0, 0xA
- ldrh r5, [r5, 0x6]
- adds r0, r5
- ldrb r0, [r0]
- cmp r1, r0
- beq _08108FE4
- movs r0, 0x5
- bl PlaySE
- mov r0, sp
- ldrh r1, [r4]
- ldrh r0, [r0]
- adds r1, r0
- lsls r1, 16
- asrs r1, 16
- adds r0, r6, 0
- bl sub_81093B8
- b _081090C6
- .align 2, 0
-_08108FE0: .4byte gUnknown_203AD10
-_08108FE4:
- ldrb r0, [r7]
- bl ListMenu_ProcessInput
- adds r4, r0, 0
- ldrb r0, [r7]
- ldr r5, _08109014 @ =gUnknown_203ACFC
- ldrh r2, [r5, 0x6]
- lsls r2, 1
- adds r1, r5, 0
- adds r1, 0xE
- adds r1, r2, r1
- adds r3, r5, 0
- adds r3, 0x8
- adds r2, r3
- bl ListMenuGetScrollAndRow
- movs r0, 0x2
- negs r0, r0
- cmp r4, r0
- beq _08109018
- adds r0, 0x1
- cmp r4, r0
- bne _08109044
- b _081090C6
- .align 2, 0
-_08109014: .4byte gUnknown_203ACFC
-_08109018:
- movs r0, 0x5
- bl PlaySE
- ldr r1, _08109038 @ =gSpecialVar_ItemId
- movs r0, 0
- strh r0, [r1]
- bl sub_8108CB4
- ldr r1, _0810903C @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08109040 @ =ItemMenu_StartFadeToExitCallback
- b _081090C4
- .align 2, 0
-_08109038: .4byte gSpecialVar_ItemId
-_0810903C: .4byte gTasks
-_08109040: .4byte ItemMenu_StartFadeToExitCallback
-_08109044:
- movs r0, 0x5
- bl PlaySE
- ldr r0, _08109074 @ =gUnknown_203AD10
- ldr r0, [r0]
- adds r0, 0xA
- ldrh r1, [r5, 0x6]
- adds r0, r1
- ldrb r0, [r0]
- cmp r4, r0
- bne _08109084
- ldr r1, _08109078 @ =gSpecialVar_ItemId
- movs r0, 0
- strh r0, [r1]
- bl sub_8108CB4
- ldr r1, _0810907C @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08109080 @ =ItemMenu_StartFadeToExitCallback
- b _081090C4
- .align 2, 0
-_08109074: .4byte gUnknown_203AD10
-_08109078: .4byte gSpecialVar_ItemId
-_0810907C: .4byte gTasks
-_08109080: .4byte ItemMenu_StartFadeToExitCallback
-_08109084:
- bl sub_8108978
- ldrb r0, [r7]
- movs r1, 0x2
- bl bag_menu_print_cursor_
- strh r4, [r7, 0x2]
- ldrb r0, [r5, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- lsls r4, 16
- lsrs r4, 16
- adds r1, r4, 0
- bl BagGetQuantityByPocketPosition
- strh r0, [r7, 0x4]
- ldrb r0, [r5, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, 0
- bl BagGetItemIdByPocketPosition
- ldr r1, _081090D0 @ =gSpecialVar_ItemId
- strh r0, [r1]
- ldr r1, _081090D4 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _081090D8 @ =sub_81090DC
-_081090C4:
- str r1, [r0]
-_081090C6:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081090D0: .4byte gSpecialVar_ItemId
-_081090D4: .4byte gTasks
-_081090D8: .4byte sub_81090DC
- thumb_func_end sub_8108F0C
-
- thumb_func_start sub_81090DC
-sub_81090DC: @ 81090DC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- bl sub_8109140
- ldr r1, _08109104 @ =gUnknown_8452F34
- ldr r0, _08109108 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x4]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- adds r0, r4, 0
- bl _call_via_r1
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08109104: .4byte gUnknown_8452F34
-_08109108: .4byte gUnknown_203ACFC
- thumb_func_end sub_81090DC
-
- thumb_func_start sub_810910C
-sub_810910C: @ 810910C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- bl sub_8109140
- bl sub_8108888
- bl sub_81088D8
- ldr r1, _08109138 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0810913C @ =sub_8108F0C
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08109138: .4byte gTasks
-_0810913C: .4byte sub_8108F0C
- thumb_func_end sub_810910C
-
- thumb_func_start sub_8109140
-sub_8109140: @ 8109140
- push {lr}
- sub sp, 0x8
- movs r1, 0x6
- str r1, [sp]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- movs r0, 0x1
- movs r1, 0
- movs r2, 0xE
- movs r3, 0x1E
- bl SetBgTilemapPalette
- movs r0, 0x1
- bl ScheduleBgCopyTilemapToVram
- add sp, 0x8
- pop {r0}
- bx r0
- thumb_func_end sub_8109140
-
- thumb_func_start sub_8109168
-sub_8109168: @ 8109168
- push {r4,lr}
- lsls r1, 24
- lsrs r4, r1, 24
- ldr r0, _081091A4 @ =gUnknown_203AD10
- ldr r0, [r0]
- ldrb r1, [r0, 0x5]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0
- bne _081091C6
- bl GetLRKeysState
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _081091A8 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- bne _08109194
- cmp r2, 0x1
- bne _081091AC
-_08109194:
- cmp r4, 0
- beq _081091C6
- movs r0, 0xF6
- bl PlaySE
- movs r0, 0x1
- b _081091C8
- .align 2, 0
-_081091A4: .4byte gUnknown_203AD10
-_081091A8: .4byte gMain
-_081091AC:
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _081091B8
- cmp r2, 0x2
- bne _081091C6
-_081091B8:
- cmp r4, 0x1
- bhi _081091C6
- movs r0, 0xF6
- bl PlaySE
- movs r0, 0x2
- b _081091C8
-_081091C6:
- movs r0, 0
-_081091C8:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8109168
-
- thumb_func_start sub_81091D0
-sub_81091D0: @ 81091D0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r6, r1, 0
- lsls r2, 16
- lsls r0, r5, 2
- adds r0, r5
- lsls r7, r0, 3
- ldr r0, _08109288 @ =gTasks+0x8
- mov r8, r0
- adds r4, r7, r0
- movs r0, 0
- strh r0, [r4, 0x1A]
- strh r0, [r4, 0x18]
- strh r6, [r4, 0x16]
- cmp r2, 0
- bne _08109242
- movs r0, 0
- bl ClearWindowTilemap
- movs r0, 0x1
- bl ClearWindowTilemap
- movs r0, 0x2
- bl ClearWindowTilemap
- ldrb r0, [r4]
- ldr r3, _0810928C @ =gUnknown_203ACFC
- ldrh r2, [r3, 0x6]
- lsls r2, 1
- adds r1, r3, 0
- adds r1, 0xE
- adds r1, r2, r1
- adds r3, 0x8
- adds r2, r3
- bl DestroyListMenuTask
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- ldr r0, _08109290 @ =gUnknown_203AD10
- ldr r0, [r0]
- ldrb r1, [r0, 0x5]
- lsls r1, 26
- lsrs r1, 30
- movs r0, 0x1
- eors r0, r1
- bl DestroyItemMenuIcon
- bl sub_8108978
-_08109242:
- movs r0, 0x12
- str r0, [sp]
- movs r0, 0xC
- str r0, [sp, 0x4]
- movs r0, 0x1
- movs r1, 0x2D
- movs r2, 0xB
- movs r3, 0x1
- bl FillBgTilemapBufferRect_Palette0
- movs r0, 0x1
- bl ScheduleBgCopyTilemapToVram
- ldr r0, _0810928C @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x6]
- adds r0, r6
- lsls r0, 24
- lsrs r0, 24
- bl sub_8098528
- ldr r1, _08109294 @ =sub_8109298
- mov r0, r8
- subs r0, 0x8
- adds r0, r7, r0
- ldr r2, [r0]
- adds r0, r5, 0
- bl SetTaskFuncWithFollowupFunc
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08109288: .4byte gTasks+0x8
-_0810928C: .4byte gUnknown_203ACFC
-_08109290: .4byte gUnknown_203AD10
-_08109294: .4byte sub_8109298
- thumb_func_end sub_81091D0
-
- thumb_func_start sub_8109298
-sub_8109298: @ 8109298
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, _081092DC @ =gTasks+0x8
- adds r5, r0, r1
- bl MenuHelpers_LinkSomething
- lsls r0, 24
- cmp r0, 0
- bne _08109314
- bl sub_810ADAC
- lsls r0, 24
- cmp r0, 0
- bne _08109314
- ldr r4, _081092E0 @ =gUnknown_203ACFC
- ldrb r1, [r5, 0x16]
- ldrb r0, [r4, 0x6]
- adds r1, r0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r6, 0
- bl sub_8109168
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081092E4
- cmp r0, 0x2
- beq _081092FA
- b _08109314
- .align 2, 0
-_081092DC: .4byte gTasks+0x8
-_081092E0: .4byte gUnknown_203ACFC
-_081092E4:
- ldrh r0, [r5, 0x16]
- ldrh r1, [r4, 0x6]
- adds r0, r1
- strh r0, [r4, 0x6]
- adds r0, r6, 0
- bl SwitchTaskToFollowupFunc
- movs r1, 0x1
- negs r1, r1
- adds r0, r6, 0
- b _0810930C
-_081092FA:
- ldrh r0, [r5, 0x16]
- ldrh r2, [r4, 0x6]
- adds r0, r2
- strh r0, [r4, 0x6]
- adds r0, r6, 0
- bl SwitchTaskToFollowupFunc
- adds r0, r6, 0
- movs r1, 0x1
-_0810930C:
- movs r2, 0x1
- bl sub_81091D0
- b _081093AA
-_08109314:
- movs r1, 0x1A
- ldrsh r0, [r5, r1]
- cmp r0, 0
- beq _08109322
- cmp r0, 0x1
- beq _08109358
- b _081093AA
-_08109322:
- ldrh r1, [r5, 0x18]
- movs r2, 0x18
- ldrsh r0, [r5, r2]
- ldr r4, _08109354 @ =0x00007fff
- cmp r0, r4
- beq _0810934C
- adds r0, r1, 0x1
- strh r0, [r5, 0x18]
- lsls r0, 24
- lsrs r0, 24
- bl sub_8109854
- movs r1, 0x18
- ldrsh r0, [r5, r1]
- cmp r0, 0xC
- bne _08109344
- strh r4, [r5, 0x18]
-_08109344:
- movs r2, 0x18
- ldrsh r0, [r5, r2]
- cmp r0, r4
- bne _081093AA
-_0810934C:
- ldrh r0, [r5, 0x1A]
- adds r0, 0x1
- strh r0, [r5, 0x1A]
- b _081093AA
- .align 2, 0
-_08109354: .4byte 0x00007fff
-_08109358:
- ldr r4, _081093B0 @ =gUnknown_203ACFC
- ldrh r0, [r5, 0x16]
- ldrh r1, [r4, 0x6]
- adds r0, r1
- strh r0, [r4, 0x6]
- bl sub_81087EC
- ldrb r0, [r4, 0x6]
- bl sub_810842C
- ldr r0, _081093B4 @ =gMultiuseListMenuTemplate
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r1, r4, 0
- adds r1, 0xE
- adds r1, r2, r1
- ldrh r1, [r1]
- adds r4, 0x8
- adds r2, r4
- ldrh r2, [r2]
- bl ListMenuInit
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5]
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0x2
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- bl sub_8108888
- bl sub_81088D8
- adds r0, r6, 0
- bl SwitchTaskToFollowupFunc
-_081093AA:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081093B0: .4byte gUnknown_203ACFC
-_081093B4: .4byte gMultiuseListMenuTemplate
- thumb_func_end sub_8109298
-
- thumb_func_start sub_81093B8
-sub_81093B8: @ 81093B8
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x18
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r4, 16
- lsrs r4, 16
- lsls r5, r0, 2
- adds r5, r0
- lsls r5, 3
- ldr r0, _08109494 @ =gTasks+0x8
- mov r9, r0
- adds r1, r5, 0
- add r1, r9
- mov r8, r1
- ldrb r0, [r1]
- mov r2, sp
- adds r2, 0x16
- add r1, sp, 0x14
- bl ListMenuGetScrollAndRow
- mov r2, r8
- ldrb r0, [r2]
- movs r1, 0x10
- movs r2, 0x1
- bl ListMenuSetUnkIndicatorsStructField
- mov r0, r8
- strh r4, [r0, 0x2]
- ldr r0, _08109498 @ =gUnknown_203AD10
- ldr r0, [r0]
- movs r6, 0
- strb r4, [r0, 0x4]
- ldr r4, _0810949C @ =gStringVar1
- ldr r0, _081094A0 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r2, r8
- ldrh r1, [r2, 0x2]
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r0, 16
- bl ItemId_GetName
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldr r4, _081094A4 @ =gStringVar4
- ldr r1, _081094A8 @ =gOtherText_WhereShouldTheStrVar1BePlaced
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0x1
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0x3
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- str r6, [sp, 0x8]
- str r6, [sp, 0xC]
- str r6, [sp, 0x10]
- movs r0, 0x1
- movs r1, 0x2
- adds r2, r4, 0
- movs r3, 0
- bl sub_810B8F0
- mov r1, r8
- ldrb r0, [r1]
- bl ListMenuGetYCoordForPrintingArrowCursor
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0
- bl sub_80986A8
- movs r0, 0
- bl sub_8098660
- bl sub_810899C
- mov r2, r8
- ldrb r0, [r2]
- movs r1, 0x2
- bl bag_menu_print_cursor_
- movs r0, 0x8
- negs r0, r0
- add r9, r0
- add r5, r9
- ldr r0, _081094AC @ =sub_81094B0
- str r0, [r5]
- add sp, 0x18
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08109494: .4byte gTasks+0x8
-_08109498: .4byte gUnknown_203AD10
-_0810949C: .4byte gStringVar1
-_081094A0: .4byte gUnknown_203ACFC
-_081094A4: .4byte gStringVar4
-_081094A8: .4byte gOtherText_WhereShouldTheStrVar1BePlaced
-_081094AC: .4byte sub_81094B0
- thumb_func_end sub_81093B8
-
- thumb_func_start sub_81094B0
-sub_81094B0: @ 81094B0
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, _08109538 @ =gTasks+0x8
- adds r4, r0, r1
- bl sub_80BF72C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0810959E
- ldrb r0, [r4]
- bl ListMenu_ProcessInput
- adds r5, r0, 0
- ldrb r0, [r4]
- ldr r3, _0810953C @ =gUnknown_203ACFC
- ldrh r2, [r3, 0x6]
- lsls r2, 1
- adds r1, r3, 0
- adds r1, 0xE
- adds r1, r2, r1
- adds r3, 0x8
- adds r2, r3
- bl ListMenuGetScrollAndRow
- ldrb r0, [r4]
- bl ListMenuGetYCoordForPrintingArrowCursor
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0
- bl sub_80986A8
- ldr r0, _08109540 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08109548
- movs r0, 0x5
- bl PlaySE
- ldr r0, _08109544 @ =gUnknown_203AD10
- ldr r1, [r0]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldrb r0, [r4]
- mov r4, sp
- adds r4, 0x2
- mov r1, sp
- adds r2, r4, 0
- bl ListMenuGetScrollAndRow
- mov r0, sp
- ldrh r1, [r0]
- ldrh r0, [r4]
- adds r1, r0
- adds r0, r6, 0
- bl sub_81095AC
- b _0810959E
- .align 2, 0
-_08109538: .4byte gTasks+0x8
-_0810953C: .4byte gUnknown_203ACFC
-_08109540: .4byte gMain
-_08109544: .4byte gUnknown_203AD10
-_08109548:
- movs r0, 0x2
- negs r0, r0
- cmp r5, r0
- beq _08109558
- adds r0, 0x1
- cmp r5, r0
- bne _08109588
- b _0810959E
-_08109558:
- movs r0, 0x5
- bl PlaySE
- ldr r0, _08109584 @ =gUnknown_203AD10
- ldr r1, [r0]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- ldrb r0, [r4]
- mov r4, sp
- adds r4, 0x2
- mov r1, sp
- adds r2, r4, 0
- bl ListMenuGetScrollAndRow
- mov r0, sp
- ldrh r1, [r0]
- ldrh r0, [r4]
- adds r1, r0
- adds r0, r6, 0
- bl sub_810967C
- b _0810959E
- .align 2, 0
-_08109584: .4byte gUnknown_203AD10
-_08109588:
- movs r0, 0x5
- bl PlaySE
- ldr r0, _081095A8 @ =gUnknown_203AD10
- ldr r1, [r0]
- movs r0, 0xFF
- strb r0, [r1, 0x4]
- adds r0, r6, 0
- adds r1, r5, 0
- bl sub_81095AC
-_0810959E:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081095A8: .4byte gUnknown_203AD10
- thumb_func_end sub_81094B0
-
- thumb_func_start sub_81095AC
-sub_81095AC: @ 81095AC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- adds r5, r1, 0
- lsls r0, 24
- lsrs r1, r0, 24
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- mov r9, r0
- ldr r0, _081095E4 @ =gTasks+0x8
- mov r10, r0
- mov r6, r9
- add r6, r10
- movs r3, 0x2
- ldrsh r2, [r6, r3]
- cmp r2, r5
- beq _081095DA
- subs r0, r5, 0x1
- cmp r2, r0
- bne _081095E8
-_081095DA:
- adds r0, r1, 0
- adds r1, r5, 0
- bl sub_810967C
- b _0810965C
- .align 2, 0
-_081095E4: .4byte gTasks+0x8
-_081095E8:
- ldr r1, _0810966C @ =gBagPockets
- ldr r4, _08109670 @ =gUnknown_203ACFC
- ldrh r0, [r4, 0x6]
- lsls r0, 3
- adds r0, r1
- ldr r0, [r0]
- adds r1, r2, 0
- adds r2, r5, 0
- bl ItemMenu_MoveItemSlotToNewPositionInArray
- ldrb r0, [r6]
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- movs r1, 0xE
- adds r1, r4
- mov r8, r1
- adds r1, r2, r1
- adds r7, r4, 0
- adds r7, 0x8
- adds r2, r7
- bl DestroyListMenuTask
- movs r3, 0x2
- ldrsh r0, [r6, r3]
- cmp r0, r5
- bcs _08109628
- ldrh r1, [r4, 0x6]
- lsls r1, 1
- adds r1, r7
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
-_08109628:
- ldrb r0, [r4, 0x6]
- bl sub_810842C
- ldr r0, _08109674 @ =gMultiuseListMenuTemplate
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- mov r3, r8
- adds r1, r2, r3
- ldrh r1, [r1]
- adds r2, r7
- ldrh r2, [r2]
- bl ListMenuInit
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r6]
- movs r0, 0x1
- bl sub_8098660
- bl sub_81088D8
- mov r0, r10
- subs r0, 0x8
- add r0, r9
- ldr r1, _08109678 @ =sub_8108F0C
- str r1, [r0]
-_0810965C:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810966C: .4byte gBagPockets
-_08109670: .4byte gUnknown_203ACFC
-_08109674: .4byte gMultiuseListMenuTemplate
-_08109678: .4byte sub_8108F0C
- thumb_func_end sub_81095AC
-
- thumb_func_start sub_810967C
-sub_810967C: @ 810967C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- mov r8, r1
- ldr r0, _0810970C @ =gTasks+0x8
- mov r10, r0
- mov r6, r8
- add r6, r10
- ldrb r0, [r6]
- ldr r5, _08109710 @ =gUnknown_203ACFC
- ldrh r2, [r5, 0x6]
- lsls r2, 1
- movs r1, 0xE
- adds r1, r5
- mov r9, r1
- adds r1, r2, r1
- adds r7, r5, 0
- adds r7, 0x8
- adds r2, r7
- bl DestroyListMenuTask
- movs r3, 0x2
- ldrsh r0, [r6, r3]
- cmp r0, r4
- bcs _081096CA
- ldrh r1, [r5, 0x6]
- lsls r1, 1
- adds r1, r7
- ldrh r0, [r1]
- subs r0, 0x1
- strh r0, [r1]
-_081096CA:
- ldrb r0, [r5, 0x6]
- bl sub_810842C
- ldr r0, _08109714 @ =gMultiuseListMenuTemplate
- ldrh r2, [r5, 0x6]
- lsls r2, 1
- mov r3, r9
- adds r1, r2, r3
- ldrh r1, [r1]
- adds r2, r7
- ldrh r2, [r2]
- bl ListMenuInit
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r6]
- movs r0, 0x1
- bl sub_8098660
- bl sub_81088D8
- mov r0, r10
- subs r0, 0x8
- add r0, r8
- ldr r1, _08109718 @ =sub_8108F0C
- str r1, [r0]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810970C: .4byte gTasks+0x8
-_08109710: .4byte gUnknown_203ACFC
-_08109714: .4byte gMultiuseListMenuTemplate
-_08109718: .4byte sub_8108F0C
- thumb_func_end sub_810967C
-
- thumb_func_start sub_810971C
-sub_810971C: @ 810971C
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- sub sp, 0x14
- adds r4, r0, 0
- adds r6, r1, 0
- lsls r4, 16
- lsrs r4, 16
- movs r0, 0x6
- movs r1, 0x2
- bl sub_810B9DC
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r0, _081097D4 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, 0
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r0, 16
- ldr r1, _081097D8 @ =gStringVar1
- mov r10, r1
- bl CopyItemName
- ldr r0, _081097DC @ =gStringVar4
- mov r9, r0
- adds r1, r6, 0
- bl StringExpandPlaceholders
- movs r0, 0x2
- str r0, [sp]
- movs r1, 0x1
- mov r8, r1
- str r1, [sp, 0x4]
- movs r6, 0
- str r6, [sp, 0x8]
- str r6, [sp, 0xC]
- str r1, [sp, 0x10]
- adds r0, r5, 0
- movs r1, 0x2
- mov r2, r9
- movs r3, 0
- bl sub_810B8F0
- movs r0, 0
- movs r1, 0
- bl sub_810B9DC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- mov r0, r10
- movs r1, 0x1
- movs r2, 0x2
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r1, _081097E0 @ =gText_TimesStrVar1
- mov r0, r9
- bl StringExpandPlaceholders
- movs r0, 0xA
- str r0, [sp]
- mov r0, r8
- str r0, [sp, 0x4]
- str r6, [sp, 0x8]
- str r6, [sp, 0xC]
- str r0, [sp, 0x10]
- adds r0, r4, 0
- movs r1, 0
- mov r2, r9
- movs r3, 0x4
- bl sub_810B8F0
- bl sub_8108940
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081097D4: .4byte gUnknown_203ACFC
-_081097D8: .4byte gStringVar1
-_081097DC: .4byte gStringVar4
-_081097E0: .4byte gText_TimesStrVar1
- thumb_func_end sub_810971C
-
- thumb_func_start sub_81097E4
-sub_81097E4: @ 81097E4
- push {r4-r6,lr}
- sub sp, 0x14
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 24
- lsrs r5, 24
- movs r0, 0
- bl sub_810BAD8
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- adds r0, r6, 0
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r0, _08109848 @ =gStringVar1
- lsls r4, 16
- asrs r4, 16
- adds r1, r4, 0
- movs r2, 0x2
- adds r3, r5, 0
- bl ConvertIntToDecimalStringN
- ldr r4, _0810984C @ =gStringVar4
- ldr r1, _08109850 @ =gText_TimesStrVar1
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0xA
- str r0, [sp]
- movs r1, 0x1
- str r1, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- str r0, [sp, 0xC]
- str r1, [sp, 0x10]
- adds r0, r6, 0
- movs r1, 0
- adds r2, r4, 0
- movs r3, 0x4
- bl sub_810B8F0
- add sp, 0x14
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08109848: .4byte gStringVar1
-_0810984C: .4byte gStringVar4
-_08109850: .4byte gText_TimesStrVar1
- thumb_func_end sub_81097E4
-
- thumb_func_start sub_8109854
-sub_8109854: @ 8109854
- push {lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0xC
- subs r2, r0
- lsls r1, r2, 3
- adds r1, r2
- lsls r1, 2
- ldr r2, _0810988C @ =gUnknown_8452D08
- adds r1, r2
- movs r3, 0xD
- subs r3, r0
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0x12
- str r0, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- movs r2, 0xB
- bl CopyToBgTilemapBufferRect
- movs r0, 0x1
- bl ScheduleBgCopyTilemapToVram
- add sp, 0x8
- pop {r0}
- bx r0
- .align 2, 0
-_0810988C: .4byte gUnknown_8452D08
- thumb_func_end sub_8109854
-
- thumb_func_start sub_8109890
-sub_8109890: @ 8109890
- push {r4-r7,lr}
- sub sp, 0x14
- ldr r0, _081098A8 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x4]
- cmp r0, 0x6
- beq _08109924
- cmp r0, 0x6
- bgt _081098AC
- cmp r0, 0x5
- beq _081098B6
- b _0810993C
- .align 2, 0
-_081098A8: .4byte gUnknown_203ACFC
-_081098AC:
- cmp r0, 0x7
- beq _081098B6
- cmp r0, 0x8
- beq _08109924
- b _0810993C
-_081098B6:
- ldr r2, _081098D4 @ =gSpecialVar_ItemId
- ldrh r1, [r2]
- ldr r0, _081098D8 @ =0x0000016d
- cmp r1, r0
- bne _081098E8
- ldr r1, _081098DC @ =gUnknown_203AD20
- movs r0, 0x8
- strb r0, [r1]
- movs r0, 0x4
- strb r0, [r1, 0x1]
- ldr r0, _081098E0 @ =gUnknown_203AD24
- str r1, [r0]
- ldr r1, _081098E4 @ =gUnknown_203AD28
- movs r0, 0x2
- b _08109AD0
- .align 2, 0
-_081098D4: .4byte gSpecialVar_ItemId
-_081098D8: .4byte 0x0000016d
-_081098DC: .4byte gUnknown_203AD20
-_081098E0: .4byte gUnknown_203AD24
-_081098E4: .4byte gUnknown_203AD28
-_081098E8:
- ldrh r0, [r2]
- bl ItemId_GetBattleUsage
- lsls r0, 24
- cmp r0, 0
- beq _0810990C
- ldr r1, _08109900 @ =gUnknown_203AD24
- ldr r0, _08109904 @ =gUnknown_8452F30
- str r0, [r1]
- ldr r1, _08109908 @ =gUnknown_203AD28
- movs r0, 0x2
- b _08109AD0
- .align 2, 0
-_08109900: .4byte gUnknown_203AD24
-_08109904: .4byte gUnknown_8452F30
-_08109908: .4byte gUnknown_203AD28
-_0810990C:
- ldr r1, _08109918 @ =gUnknown_203AD24
- ldr r0, _0810991C @ =gUnknown_8452F32
- str r0, [r1]
- ldr r1, _08109920 @ =gUnknown_203AD28
- movs r0, 0x1
- b _08109AD0
- .align 2, 0
-_08109918: .4byte gUnknown_203AD24
-_0810991C: .4byte gUnknown_8452F32
-_08109920: .4byte gUnknown_203AD28
-_08109924:
- ldr r1, _08109930 @ =gUnknown_203AD24
- ldr r0, _08109934 @ =gUnknown_8452F30
- str r0, [r1]
- ldr r1, _08109938 @ =gUnknown_203AD28
- movs r0, 0x2
- b _08109AD0
- .align 2, 0
-_08109930: .4byte gUnknown_203AD24
-_08109934: .4byte gUnknown_8452F30
-_08109938: .4byte gUnknown_203AD28
-_0810993C:
- bl MenuHelpers_LinkSomething
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08109950
- bl InUnionRoom
- cmp r0, 0x1
- bne _081099C4
-_08109950:
- ldr r1, _08109970 @ =gSpecialVar_ItemId
- ldr r2, _08109974 @ =0xfffffe94
- adds r0, r2, 0
- ldrh r1, [r1]
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bhi _08109984
- ldr r1, _08109978 @ =gUnknown_203AD24
- ldr r0, _0810997C @ =gUnknown_8452F2E
- str r0, [r1]
- ldr r1, _08109980 @ =gUnknown_203AD28
- movs r0, 0x2
- b _08109AD0
- .align 2, 0
-_08109970: .4byte gSpecialVar_ItemId
-_08109974: .4byte 0xfffffe94
-_08109978: .4byte gUnknown_203AD24
-_0810997C: .4byte gUnknown_8452F2E
-_08109980: .4byte gUnknown_203AD28
-_08109984:
- ldr r0, _08109998 @ =gUnknown_203ACFC
- ldrh r2, [r0, 0x6]
- adds r3, r0, 0
- cmp r2, 0x1
- bne _081099A0
- ldr r0, _0810999C @ =gUnknown_203AD28
- strb r2, [r0]
- adds r7, r0, 0
- b _081099A8
- .align 2, 0
-_08109998: .4byte gUnknown_203ACFC
-_0810999C: .4byte gUnknown_203AD28
-_081099A0:
- ldr r1, _081099B8 @ =gUnknown_203AD28
- movs r0, 0x2
- strb r0, [r1]
- adds r7, r1, 0
-_081099A8:
- ldr r0, _081099BC @ =gUnknown_203AD24
- ldrh r1, [r3, 0x6]
- lsls r1, 1
- ldr r2, _081099C0 @ =gUnknown_8452F28
- adds r1, r2
- str r1, [r0]
- b _08109AD4
- .align 2, 0
-_081099B8: .4byte gUnknown_203AD28
-_081099BC: .4byte gUnknown_203AD24
-_081099C0: .4byte gUnknown_8452F28
-_081099C4:
- ldr r5, _081099D8 @ =gUnknown_203ACFC
- ldrh r0, [r5, 0x6]
- cmp r0, 0x1
- beq _08109A34
- cmp r0, 0x1
- bgt _081099E0
- cmp r0, 0
- beq _081099EC
- ldr r7, _081099DC @ =gUnknown_203AD28
- b _08109AD4
- .align 2, 0
-_081099D8: .4byte gUnknown_203ACFC
-_081099DC: .4byte gUnknown_203AD28
-_081099E0:
- cmp r0, 0x2
- beq _08109AC4
- ldr r7, _081099E8 @ =gUnknown_203AD28
- b _08109AD4
- .align 2, 0
-_081099E8: .4byte gUnknown_203AD28
-_081099EC:
- ldr r4, _08109A0C @ =gUnknown_203AD28
- movs r0, 0x4
- strb r0, [r4]
- ldr r0, _08109A10 @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- bl ItemIsMail
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08109A1C
- ldr r1, _08109A14 @ =gUnknown_203AD24
- ldr r0, _08109A18 @ =gUnknown_8452F24
- str r0, [r1]
- adds r7, r4, 0
- b _08109AD4
- .align 2, 0
-_08109A0C: .4byte gUnknown_203AD28
-_08109A10: .4byte gSpecialVar_ItemId
-_08109A14: .4byte gUnknown_203AD24
-_08109A18: .4byte gUnknown_8452F24
-_08109A1C:
- ldr r0, _08109A2C @ =gUnknown_203AD24
- ldrh r1, [r5, 0x6]
- lsls r1, 2
- ldr r2, _08109A30 @ =gUnknown_8452F18
- adds r1, r2
- str r1, [r0]
- adds r7, r4, 0
- b _08109AD4
- .align 2, 0
-_08109A2C: .4byte gUnknown_203AD24
-_08109A30: .4byte gUnknown_8452F18
-_08109A34:
- ldr r0, _08109A5C @ =gUnknown_203AD24
- ldr r2, _08109A60 @ =gUnknown_203AD20
- str r2, [r0]
- ldr r3, _08109A64 @ =gUnknown_203AD28
- movs r0, 0x3
- strb r0, [r3]
- movs r0, 0x4
- strb r0, [r2, 0x2]
- ldr r0, _08109A68 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, _08109A6C @ =0x00000296
- adds r0, r1
- ldr r1, _08109A70 @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- adds r7, r3, 0
- ldrh r3, [r1]
- cmp r0, r3
- bne _08109A74
- movs r0, 0xA
- b _08109A76
- .align 2, 0
-_08109A5C: .4byte gUnknown_203AD24
-_08109A60: .4byte gUnknown_203AD20
-_08109A64: .4byte gUnknown_203AD28
-_08109A68: .4byte gSaveBlock1Ptr
-_08109A6C: .4byte 0x00000296
-_08109A70: .4byte gSpecialVar_ItemId
-_08109A74:
- movs r0, 0x2
-_08109A76:
- strb r0, [r2, 0x1]
- ldrh r1, [r1]
- ldr r3, _08109A8C @ =0xfffffe94
- adds r0, r1, r3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bhi _08109A90
- movs r0, 0x7
- strb r0, [r2]
- b _08109AD4
- .align 2, 0
-_08109A8C: .4byte 0xfffffe94
-_08109A90:
- lsls r1, 16
- movs r0, 0xB4
- lsls r0, 17
- cmp r1, r0
- bne _08109AB0
- movs r0, 0x6
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- beq _08109AB0
- ldr r1, _08109AAC @ =gUnknown_203AD20
- movs r0, 0x9
- b _08109AB4
- .align 2, 0
-_08109AAC: .4byte gUnknown_203AD20
-_08109AB0:
- ldr r1, _08109ABC @ =gUnknown_203AD20
- movs r0, 0
-_08109AB4:
- strb r0, [r1]
- ldr r7, _08109AC0 @ =gUnknown_203AD28
- b _08109AD4
- .align 2, 0
-_08109ABC: .4byte gUnknown_203AD20
-_08109AC0: .4byte gUnknown_203AD28
-_08109AC4:
- ldr r1, _08109B98 @ =gUnknown_203AD24
- ldr r0, _08109B9C @ =gUnknown_8452F18
- adds r0, 0x8
- str r0, [r1]
- ldr r1, _08109BA0 @ =gUnknown_203AD28
- movs r0, 0x3
-_08109AD0:
- strb r0, [r1]
- adds r7, r1, 0
-_08109AD4:
- ldrb r1, [r7]
- subs r1, 0x1
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0xA
- bl sub_810B9DC
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- movs r0, 0x2
- movs r1, 0
- bl GetMenuCursorDimensionByFont
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- movs r0, 0x2
- movs r1, 0x2
- bl GetFontAttribute
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x2
- movs r1, 0x1
- bl GetFontAttribute
- adds r0, 0x2
- lsls r0, 24
- lsrs r0, 24
- str r4, [sp]
- str r0, [sp, 0x4]
- ldrb r0, [r7]
- str r0, [sp, 0x8]
- ldr r0, _08109BA4 @ =gUnknown_8452EB8
- str r0, [sp, 0xC]
- ldr r0, _08109B98 @ =gUnknown_203AD24
- ldr r0, [r0]
- str r0, [sp, 0x10]
- adds r0, r6, 0
- movs r1, 0x2
- adds r2, r5, 0
- movs r3, 0x2
- bl AddItemMenuActionTextPrinters
- movs r0, 0x2
- movs r1, 0x1
- bl GetFontAttribute
- adds r0, 0x2
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- ldrb r0, [r7]
- str r0, [sp, 0x4]
- movs r5, 0
- str r5, [sp, 0x8]
- adds r0, r6, 0
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x2
- bl Menu_InitCursor
- movs r0, 0x6
- movs r1, 0
- bl sub_810B9DC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08109BA8 @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- ldr r1, _08109BAC @ =gStringVar1
- bl CopyItemName
- ldr r6, _08109BB0 @ =gStringVar4
- ldr r1, _08109BB4 @ =gOtherText_StrVar1
- adds r0, r6, 0
- bl StringExpandPlaceholders
- movs r0, 0x2
- str r0, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- str r5, [sp, 0x8]
- str r5, [sp, 0xC]
- str r0, [sp, 0x10]
- adds r0, r4, 0
- movs r1, 0x2
- adds r2, r6, 0
- movs r3, 0
- bl sub_810B8F0
- add sp, 0x14
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08109B98: .4byte gUnknown_203AD24
-_08109B9C: .4byte gUnknown_8452F18
-_08109BA0: .4byte gUnknown_203AD28
-_08109BA4: .4byte gUnknown_8452EB8
-_08109BA8: .4byte gSpecialVar_ItemId
-_08109BAC: .4byte gStringVar1
-_08109BB0: .4byte gStringVar4
-_08109BB4: .4byte gOtherText_StrVar1
- thumb_func_end sub_8109890
-
- thumb_func_start sub_8109BB8
-sub_8109BB8: @ 8109BB8
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl sub_8109890
- ldr r1, _08109BDC @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08109BE0 @ =sub_8109BE4
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08109BDC: .4byte gTasks
-_08109BE0: .4byte sub_8109BE4
- thumb_func_end sub_8109BB8
-
- thumb_func_start sub_8109BE4
-sub_8109BE4: @ 8109BE4
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- bl sub_80BF72C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08109C42
- bl Menu_ProcessInputNoWrapAround
- lsls r0, 24
- asrs r4, r0, 24
- movs r0, 0x2
- negs r0, r0
- cmp r4, r0
- beq _08109C42
- adds r0, 0x1
- cmp r4, r0
- bne _08109C24
- movs r0, 0x5
- bl PlaySE
- ldr r0, _08109C20 @ =gUnknown_8452EB8
- ldr r1, [r0, 0x24]
- adds r0, r5, 0
- bl _call_via_r1
- b _08109C42
- .align 2, 0
-_08109C20: .4byte gUnknown_8452EB8
-_08109C24:
- movs r0, 0x5
- bl PlaySE
- ldr r1, _08109C48 @ =gUnknown_8452EB8
- ldr r0, _08109C4C @ =gUnknown_203AD24
- ldr r0, [r0]
- adds r0, r4
- ldrb r0, [r0]
- lsls r0, 3
- adds r1, 0x4
- adds r0, r1
- ldr r1, [r0]
- adds r0, r6, 0
- bl _call_via_r1
-_08109C42:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08109C48: .4byte gUnknown_8452EB8
-_08109C4C: .4byte gUnknown_203AD24
- thumb_func_end sub_8109BE4
-
- thumb_func_start sub_8109C50
-sub_8109C50: @ 8109C50
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r5, _08109CA0 @ =gSpecialVar_ItemId
- ldrh r0, [r5]
- bl ItemId_GetFieldFunc
- cmp r0, 0
- beq _08109CB4
- movs r0, 0xA
- bl sub_810BA3C
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- bl CalculatePlayerPartyCount
- lsls r0, 24
- cmp r0, 0
- bne _08109CA4
- ldrh r0, [r5]
- bl ItemId_GetType
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08109CA4
- adds r0, r4, 0
- bl sub_810A170
- b _08109CB4
- .align 2, 0
-_08109CA0: .4byte gSpecialVar_ItemId
-_08109CA4:
- ldr r0, _08109CBC @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- bl ItemId_GetFieldFunc
- adds r1, r0, 0
- adds r0, r4, 0
- bl _call_via_r1
-_08109CB4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08109CBC: .4byte gSpecialVar_ItemId
- thumb_func_end sub_8109C50
-
- thumb_func_start sub_8109CC0
-sub_8109CC0: @ 8109CC0
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r6, r0, 3
- ldr r7, _08109D14 @ =gTasks+0x8
- adds r4, r6, r7
- movs r0, 0xA
- bl sub_810BAD8
- lsls r0, 24
- lsrs r0, 24
- bl ClearWindowTilemap
- movs r0, 0x6
- bl sub_810BAD8
- lsls r0, 24
- lsrs r0, 24
- bl ClearWindowTilemap
- movs r0, 0xA
- bl sub_810BA3C
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- strh r0, [r4, 0x10]
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- bne _08109D18
- adds r0, r5, 0
- bl sub_8109D38
- b _08109D2A
- .align 2, 0
-_08109D14: .4byte gTasks+0x8
-_08109D18:
- ldrh r0, [r4, 0x2]
- ldr r1, _08109D30 @ =gText_TossOutHowManyStrVar1s
- bl sub_810971C
- adds r0, r7, 0
- subs r0, 0x8
- adds r0, r6, r0
- ldr r1, _08109D34 @ =sub_8109DEC
- str r1, [r0]
-_08109D2A:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08109D30: .4byte gText_TossOutHowManyStrVar1s
-_08109D34: .4byte sub_8109DEC
- thumb_func_end sub_8109CC0
-
- thumb_func_start sub_8109D38
-sub_8109D38: @ 8109D38
- push {r4,r5,lr}
- sub sp, 0x14
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- ldr r0, _08109D9C @ =gTasks+0x8
- adds r1, r0
- ldr r0, _08109DA0 @ =gStringVar2
- movs r2, 0x10
- ldrsh r1, [r1, r2]
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r5, _08109DA4 @ =gStringVar4
- ldr r1, _08109DA8 @ =gText_ThrowAwayStrVar2OfThisItemQM
- adds r0, r5, 0
- bl StringExpandPlaceholders
- movs r0, 0x6
- movs r1, 0x1
- bl sub_810B9DC
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x2
- str r1, [sp]
- movs r2, 0x1
- str r2, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- str r1, [sp, 0xC]
- str r2, [sp, 0x10]
- movs r1, 0x2
- adds r2, r5, 0
- movs r3, 0
- bl sub_810B8F0
- ldr r1, _08109DAC @ =gUnknown_8452F50
- adds r0, r4, 0
- bl sub_810BAE8
- add sp, 0x14
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08109D9C: .4byte gTasks+0x8
-_08109DA0: .4byte gStringVar2
-_08109DA4: .4byte gStringVar4
-_08109DA8: .4byte gText_ThrowAwayStrVar2OfThisItemQM
-_08109DAC: .4byte gUnknown_8452F50
- thumb_func_end sub_8109D38
-
- thumb_func_start sub_8109DB0
-sub_8109DB0: @ 8109DB0
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- ldr r0, _08109DE8 @ =gTasks+0x8
- adds r4, r0
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- ldrb r0, [r4]
- movs r1, 0x1
- bl bag_menu_print_cursor_
- adds r0, r5, 0
- bl sub_810910C
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08109DE8: .4byte gTasks+0x8
- thumb_func_end sub_8109DB0
-
- thumb_func_start sub_8109DEC
-sub_8109DEC: @ 8109DEC
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _08109E1C @ =gTasks+0x8
- adds r4, r0, r1
- adds r0, r4, 0
- adds r0, 0x10
- ldrh r1, [r4, 0x4]
- bl AdjustQuantityAccordingToDPadInput
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08109E20
- movs r1, 0x10
- ldrsh r0, [r4, r1]
- movs r1, 0x3
- bl sub_81097E4
- b _08109EA2
- .align 2, 0
-_08109E1C: .4byte gTasks+0x8
-_08109E20:
- ldr r0, _08109E60 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08109E64
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x6
- bl sub_810BAD8
- lsls r0, 24
- lsrs r0, 24
- bl ClearWindowTilemap
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl sub_810BA3C
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- bl sub_8108978
- adds r0, r5, 0
- bl sub_8109D38
- b _08109EA2
- .align 2, 0
-_08109E60: .4byte gMain
-_08109E64:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08109EA2
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl sub_810BA3C
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- ldrb r0, [r4]
- movs r1, 0x1
- bl bag_menu_print_cursor_
- bl sub_8108978
- adds r0, r6, 0
- bl sub_810910C
-_08109EA2:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8109DEC
-
- thumb_func_start sub_8109EA8
-sub_8109EA8: @ 8109EA8
- push {r4-r6,lr}
- sub sp, 0x14
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- ldr r5, _08109F28 @ =gTasks+0x8
- adds r6, r4, r5
- movs r0, 0x6
- bl sub_810BA3C
- ldr r0, _08109F2C @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r6, 0x2]
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r0, 16
- ldr r1, _08109F30 @ =gStringVar1
- bl CopyItemName
- ldr r0, _08109F34 @ =gStringVar2
- movs r2, 0x10
- ldrsh r1, [r6, r2]
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r6, _08109F38 @ =gStringVar4
- ldr r1, _08109F3C @ =gText_ThrewAwayStrVar2StrVar1s
- adds r0, r6, 0
- bl StringExpandPlaceholders
- movs r0, 0x6
- movs r1, 0x3
- bl sub_810B9DC
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x2
- str r1, [sp]
- movs r2, 0x1
- str r2, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- str r1, [sp, 0xC]
- str r2, [sp, 0x10]
- movs r1, 0x2
- adds r2, r6, 0
- movs r3, 0
- bl sub_810B8F0
- subs r5, 0x8
- adds r4, r5
- ldr r0, _08109F40 @ =sub_8109F44
- str r0, [r4]
- add sp, 0x14
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08109F28: .4byte gTasks+0x8
-_08109F2C: .4byte gUnknown_203ACFC
-_08109F30: .4byte gStringVar1
-_08109F34: .4byte gStringVar2
-_08109F38: .4byte gStringVar4
-_08109F3C: .4byte gText_ThrewAwayStrVar2StrVar1s
-_08109F40: .4byte sub_8109F44
- thumb_func_end sub_8109EA8
-
- thumb_func_start sub_8109F44
-sub_8109F44: @ 8109F44
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r0, 2
- add r0, r8
- lsls r0, 3
- ldr r1, _08109FEC @ =gTasks+0x8
- adds r7, r0, r1
- ldr r0, _08109FF0 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08109F6E
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08109FE0
-_08109F6E:
- movs r0, 0x5
- bl PlaySE
- ldr r0, _08109FF4 @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- ldrh r1, [r7, 0x10]
- bl RemoveBagItem
- movs r0, 0x6
- bl sub_810BA3C
- ldrb r0, [r7]
- ldr r4, _08109FF8 @ =gUnknown_203ACFC
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r5, r4, 0
- adds r5, 0xE
- adds r1, r2, r5
- adds r6, r4, 0
- adds r6, 0x8
- adds r2, r6
- bl DestroyListMenuTask
- ldrb r0, [r4, 0x6]
- bl sub_8108DC8
- ldrb r0, [r4, 0x6]
- bl sub_81089F4
- ldrb r0, [r4, 0x6]
- bl sub_810842C
- ldr r0, _08109FFC @ =gMultiuseListMenuTemplate
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r5, r2, r5
- ldrh r1, [r5]
- adds r2, r6
- ldrh r2, [r2]
- bl ListMenuInit
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r7]
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- ldrb r0, [r7]
- movs r1, 0x1
- bl bag_menu_print_cursor_
- mov r0, r8
- bl sub_810910C
-_08109FE0:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08109FEC: .4byte gTasks+0x8
-_08109FF0: .4byte gMain
-_08109FF4: .4byte gSpecialVar_ItemId
-_08109FF8: .4byte gUnknown_203ACFC
-_08109FFC: .4byte gMultiuseListMenuTemplate
- thumb_func_end sub_8109F44
-
- thumb_func_start sub_810A000
-sub_810A000: @ 810A000
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r0, 2
- add r0, r8
- lsls r0, 3
- ldr r1, _0810A040 @ =gTasks+0x8
- adds r7, r0, r1
- ldr r0, _0810A044 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r7, 0x2]
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r0, _0810A048 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r3, _0810A04C @ =0x00000296
- adds r1, r0, r3
- ldrh r0, [r1]
- cmp r0, r2
- bne _0810A050
- movs r0, 0
- strh r0, [r1]
- b _0810A052
- .align 2, 0
-_0810A040: .4byte gTasks+0x8
-_0810A044: .4byte gUnknown_203ACFC
-_0810A048: .4byte gSaveBlock1Ptr
-_0810A04C: .4byte 0x00000296
-_0810A050:
- strh r2, [r1]
-_0810A052:
- ldrb r0, [r7]
- ldr r4, _0810A0A0 @ =gUnknown_203ACFC
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r5, r4, 0
- adds r5, 0xE
- adds r1, r2, r5
- adds r6, r4, 0
- adds r6, 0x8
- adds r2, r6
- bl DestroyListMenuTask
- ldrb r0, [r4, 0x6]
- bl sub_810842C
- ldr r0, _0810A0A4 @ =gMultiuseListMenuTemplate
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r5, r2, r5
- ldrh r1, [r5]
- adds r2, r6
- ldrh r2, [r2]
- bl ListMenuInit
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r7]
- movs r0, 0
- movs r1, 0x1
- bl CopyWindowToVram
- mov r0, r8
- bl sub_810A2DC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810A0A0: .4byte gUnknown_203ACFC
-_0810A0A4: .4byte gMultiuseListMenuTemplate
- thumb_func_end sub_810A000
-
- thumb_func_start sub_810A0A8
-sub_810A0A8: @ 810A0A8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r7, r4, 0
- lsls r0, r4, 2
- adds r0, r4
- lsls r6, r0, 3
- ldr r0, _0810A110 @ =gTasks+0x8
- mov r8, r0
- adds r1, r6, r0
- ldr r0, _0810A114 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r1, 0x2]
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r5, r0, 16
- movs r0, 0xA
- bl sub_810BA3C
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x1
- bl CopyWindowToVram
- adds r0, r5, 0
- bl itemid_80BF6D8_mail_related
- lsls r0, 24
- cmp r0, 0
- bne _0810A120
- ldr r2, _0810A118 @ =gUnknown_841630F
- ldr r3, _0810A11C @ =sub_810A1D0
- adds r0, r4, 0
- movs r1, 0x2
- bl DisplayItemMessageInBag
- b _0810A166
- .align 2, 0
-_0810A110: .4byte gTasks+0x8
-_0810A114: .4byte gUnknown_203ACFC
-_0810A118: .4byte gUnknown_841630F
-_0810A11C: .4byte sub_810A1D0
-_0810A120:
- adds r0, r5, 0
- bl itemid_is_unique
- lsls r0, 24
- cmp r0, 0
- bne _0810A160
- bl CalculatePlayerPartyCount
- lsls r0, 24
- cmp r0, 0
- bne _0810A13E
- adds r0, r4, 0
- bl sub_810A170
- b _0810A166
-_0810A13E:
- ldr r0, _0810A154 @ =gUnknown_203AD10
- ldr r1, [r0]
- ldr r0, _0810A158 @ =CB2_ChooseMonToGiveItem
- str r0, [r1]
- mov r0, r8
- subs r0, 0x8
- adds r0, r6, r0
- ldr r1, _0810A15C @ =ItemMenu_StartFadeToExitCallback
- str r1, [r0]
- b _0810A166
- .align 2, 0
-_0810A154: .4byte gUnknown_203AD10
-_0810A158: .4byte CB2_ChooseMonToGiveItem
-_0810A15C: .4byte ItemMenu_StartFadeToExitCallback
-_0810A160:
- adds r0, r7, 0
- bl sub_810A18C
-_0810A166:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_810A0A8
-
- thumb_func_start sub_810A170
-sub_810A170: @ 810A170
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0810A184 @ =gText_ThereIsNoPokemon
- ldr r3, _0810A188 @ =sub_810A1D0
- movs r1, 0x2
- bl DisplayItemMessageInBag
- pop {r0}
- bx r0
- .align 2, 0
-_0810A184: .4byte gText_ThereIsNoPokemon
-_0810A188: .4byte sub_810A1D0
- thumb_func_end sub_810A170
-
- thumb_func_start sub_810A18C
-sub_810A18C: @ 810A18C
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _0810A1BC @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- ldr r1, _0810A1C0 @ =gStringVar1
- bl CopyItemName
- ldr r5, _0810A1C4 @ =gStringVar4
- ldr r1, _0810A1C8 @ =gText_ItemCantBeHeld
- adds r0, r5, 0
- bl StringExpandPlaceholders
- ldr r3, _0810A1CC @ =sub_810A1D0
- adds r0, r4, 0
- movs r1, 0x2
- adds r2, r5, 0
- bl DisplayItemMessageInBag
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810A1BC: .4byte gSpecialVar_ItemId
-_0810A1C0: .4byte gStringVar1
-_0810A1C4: .4byte gStringVar4
-_0810A1C8: .4byte gText_ItemCantBeHeld
-_0810A1CC: .4byte sub_810A1D0
- thumb_func_end sub_810A18C
-
- thumb_func_start sub_810A1D0
-sub_810A1D0: @ 810A1D0
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0810A1F4 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0810A1EE
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_810A1F8
-_0810A1EE:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0810A1F4: .4byte gMain
- thumb_func_end sub_810A1D0
-
- thumb_func_start sub_810A1F8
-sub_810A1F8: @ 810A1F8
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- mov r8, r0
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r5, r0, 2
- add r5, r8
- lsls r5, 3
- ldr r0, _0810A27C @ =gTasks+0x8
- adds r5, r0
- movs r0, 0x5
- bl sub_810BA9C
- ldrb r0, [r5]
- ldr r4, _0810A280 @ =gUnknown_203ACFC
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r6, r4, 0
- adds r6, 0xE
- adds r1, r2, r6
- movs r3, 0x8
- adds r3, r4
- mov r9, r3
- add r2, r9
- bl DestroyListMenuTask
- ldrb r0, [r4, 0x6]
- bl sub_8108DC8
- ldrb r0, [r4, 0x6]
- bl sub_81089F4
- ldrb r0, [r4, 0x6]
- bl sub_810842C
- ldr r0, _0810A284 @ =gMultiuseListMenuTemplate
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r6, r2, r6
- ldrh r1, [r6]
- add r2, r9
- ldrh r2, [r2]
- bl ListMenuInit
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5]
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- ldrb r0, [r5]
- movs r1, 0x1
- bl bag_menu_print_cursor_
- mov r0, r8
- bl sub_810910C
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0810A27C: .4byte gTasks+0x8
-_0810A280: .4byte gUnknown_203ACFC
-_0810A284: .4byte gMultiuseListMenuTemplate
- thumb_func_end sub_810A1F8
-
- thumb_func_start sub_810A288
-sub_810A288: @ 810A288
- push {r4-r6,lr}
- sub sp, 0x4
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- ldr r0, _0810A2D8 @ =gTasks+0x8
- adds r4, r0
- ldrb r0, [r4]
- mov r6, sp
- adds r6, 0x2
- mov r1, sp
- adds r2, r6, 0
- bl ListMenuGetScrollAndRow
- mov r0, sp
- ldrh r0, [r0]
- ldrh r1, [r6]
- adds r0, r1
- bl sub_8108818
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- ldrb r0, [r4]
- movs r1, 0x1
- bl bag_menu_print_cursor_
- adds r0, r5, 0
- bl sub_810910C
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0810A2D8: .4byte gTasks+0x8
- thumb_func_end sub_810A288
-
- thumb_func_start sub_810A2DC
-sub_810A2DC: @ 810A2DC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0xA
- bl sub_810BA3C
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _0810A320 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldrb r0, [r0, 0x8]
- movs r1, 0x1
- bl bag_menu_print_cursor_
- adds r0, r4, 0
- bl sub_810910C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0810A320: .4byte gTasks
- thumb_func_end sub_810A2DC
-
- thumb_func_start sub_810A324
-sub_810A324: @ 810A324
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r5, _0810A36C @ =gSpecialVar_ItemId
- ldrh r0, [r5]
- bl ItemId_GetBattleFunc
- cmp r0, 0
- beq _0810A364
- movs r0, 0xA
- bl sub_810BA3C
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x1
- bl CopyWindowToVram
- ldrh r0, [r5]
- bl ItemId_GetBattleFunc
- adds r1, r0, 0
- adds r0, r4, 0
- bl _call_via_r1
-_0810A364:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810A36C: .4byte gSpecialVar_ItemId
- thumb_func_end sub_810A324
-
- thumb_func_start sub_810A370
-sub_810A370: @ 810A370
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r7, r0, 3
- ldr r0, _0810A3BC @ =gTasks+0x8
- mov r9, r0
- adds r1, r7, r0
- ldr r2, _0810A3C0 @ =gUnknown_203ACFC
- mov r8, r2
- ldrb r0, [r2, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r1, 0x2]
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r4, r0, 16
- adds r6, r4, 0
- adds r0, r4, 0
- bl itemid_80BF6D8_mail_related
- lsls r0, 24
- cmp r0, 0
- bne _0810A3CC
- ldr r2, _0810A3C4 @ =gUnknown_841630F
- ldr r3, _0810A3C8 @ =sub_810A1D0
- adds r0, r5, 0
- movs r1, 0x2
- bl DisplayItemMessageInBag
- b _0810A426
- .align 2, 0
-_0810A3BC: .4byte gTasks+0x8
-_0810A3C0: .4byte gUnknown_203ACFC
-_0810A3C4: .4byte gUnknown_841630F
-_0810A3C8: .4byte sub_810A1D0
-_0810A3CC:
- movs r0, 0xB6
- lsls r0, 1 @ ITEM_TM_CASE
- cmp r4, r0
- bne _0810A3DC
- ldr r0, _0810A3D8 @ =sub_810A434
- b _0810A3E4
- .align 2, 0
-_0810A3D8: .4byte sub_810A434
-_0810A3DC:
- ldr r0, _0810A3F0 @ =ITEM_BERRY_POUCH
- cmp r4, r0
- bne _0810A3F8
- ldr r0, _0810A3F4 @ =sub_810A448
-_0810A3E4:
- bl ItemMenu_SetExitCallback
- adds r0, r5, 0
- bl ItemMenu_StartFadeToExitCallback
- b _0810A426
- .align 2, 0
-_0810A3F0: .4byte 0x0000016d @ ITEM_BERRY_POUCH
-_0810A3F4: .4byte sub_810A448
-_0810A3F8:
- mov r1, r8
- ldrh r0, [r1, 0x6]
- cmp r0, 0x1
- beq _0810A420
- adds r0, r6, 0
- bl itemid_is_unique
- lsls r0, 24
- cmp r0, 0
- bne _0810A420
- bl sub_8108CB4
- mov r0, r9
- subs r0, 0x8
- adds r0, r7, r0
- ldr r1, _0810A41C @ =ItemMenu_StartFadeToExitCallback
- str r1, [r0]
- b _0810A426
- .align 2, 0
-_0810A41C: .4byte ItemMenu_StartFadeToExitCallback
-_0810A420:
- adds r0, r5, 0
- bl sub_810A18C
-_0810A426:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_810A370
-
- thumb_func_start sub_810A434
-sub_810A434: @ 810A434
- push {lr}
- ldr r1, _0810A444 @ =sub_810A45C
- movs r0, 0x1
- movs r2, 0
- bl InitTMCase
- pop {r0}
- bx r0
- .align 2, 0
-_0810A444: .4byte sub_810A45C
- thumb_func_end sub_810A434
-
- thumb_func_start sub_810A448
-sub_810A448: @ 810A448
- push {lr}
- ldr r1, _0810A458 @ =sub_810A45C
- movs r0, 0x1
- movs r2, 0
- bl InitBerryPouch
- pop {r0}
- bx r0
- .align 2, 0
-_0810A458: .4byte sub_810A45C
- thumb_func_end sub_810A448
-
- thumb_func_start sub_810A45C
-sub_810A45C: @ 810A45C
- push {lr}
- bl CB2_SelectBagItemToGive
- pop {r0}
- bx r0
- thumb_func_end sub_810A45C
-
- thumb_func_start sub_810A468
-sub_810A468: @ 810A468
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r7, r0, 3
- ldr r0, _0810A4B4 @ =gTasks+0x8
- mov r9, r0
- adds r1, r7, r0
- ldr r2, _0810A4B8 @ =gUnknown_203ACFC
- mov r8, r2
- ldrb r0, [r2, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r1, 0x2]
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r4, r0, 16
- adds r6, r4, 0
- adds r0, r4, 0
- bl ItemIsMail
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810A4C4
- ldr r2, _0810A4BC @ =gUnknown_841630F
- ldr r3, _0810A4C0 @ =sub_810A1D0
- adds r0, r5, 0
- movs r1, 0x2
- bl DisplayItemMessageInBag
- b _0810A51E
- .align 2, 0
-_0810A4B4: .4byte gTasks+0x8
-_0810A4B8: .4byte gUnknown_203ACFC
-_0810A4BC: .4byte gUnknown_841630F
-_0810A4C0: .4byte sub_810A1D0
-_0810A4C4:
- movs r0, 0xB6
- lsls r0, 1 @ ITEM_TM_CASE
- cmp r4, r0
- bne _0810A4D4
- ldr r0, _0810A4D0 @ =sub_810A52C
- b _0810A4DC
- .align 2, 0
-_0810A4D0: .4byte sub_810A52C
-_0810A4D4:
- ldr r0, _0810A4E8 @ =0x0000016d @ ITEM_BERRY_POUCH
- cmp r4, r0
- bne _0810A4F0
- ldr r0, _0810A4EC @ =sub_810A540
-_0810A4DC:
- bl ItemMenu_SetExitCallback
- adds r0, r5, 0
- bl ItemMenu_StartFadeToExitCallback
- b _0810A51E
- .align 2, 0
-_0810A4E8: .4byte 0x0000016d
-_0810A4EC: .4byte sub_810A540
-_0810A4F0:
- mov r1, r8
- ldrh r0, [r1, 0x6]
- cmp r0, 0x1
- beq _0810A518
- adds r0, r6, 0
- bl itemid_is_unique
- lsls r0, 24
- cmp r0, 0
- bne _0810A518
- bl sub_8108CB4
- mov r0, r9
- subs r0, 0x8
- adds r0, r7, r0
- ldr r1, _0810A514 @ =ItemMenu_StartFadeToExitCallback
- str r1, [r0]
- b _0810A51E
- .align 2, 0
-_0810A514: .4byte ItemMenu_StartFadeToExitCallback
-_0810A518:
- adds r0, r5, 0
- bl sub_810A18C
-_0810A51E:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_810A468
-
- thumb_func_start sub_810A52C
-sub_810A52C: @ 810A52C
- push {lr}
- ldr r1, _0810A53C @ =sub_810A554
- movs r0, 0x3
- movs r2, 0
- bl InitTMCase
- pop {r0}
- bx r0
- .align 2, 0
-_0810A53C: .4byte sub_810A554
- thumb_func_end sub_810A52C
-
- thumb_func_start sub_810A540
-sub_810A540: @ 810A540
- push {lr}
- ldr r1, _0810A550 @ =sub_810A554
- movs r0, 0x3
- movs r2, 0
- bl InitBerryPouch
- pop {r0}
- bx r0
- .align 2, 0
-_0810A550: .4byte sub_810A554
- thumb_func_end sub_810A540
-
- thumb_func_start sub_810A554
-sub_810A554: @ 810A554
- push {lr}
- ldr r2, _0810A564 @ =sub_808CE60
- movs r0, 0x4
- movs r1, 0x3
- bl GoToBagMenu
- pop {r0}
- bx r0
- .align 2, 0
-_0810A564: .4byte sub_808CE60
- thumb_func_end sub_810A554
-
- thumb_func_start sub_810A568
-sub_810A568: @ 810A568
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r7, r5, 0
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _0810A58C @ =gTasks+0x8
- adds r4, r0, r1
- ldr r6, _0810A590 @ =gSpecialVar_ItemId
- ldrh r1, [r6]
- movs r0, 0xB6
- lsls r0, 1
- cmp r1, r0
- bne _0810A598
- ldr r0, _0810A594 @ =sub_810A654
- b _0810A5A0
- .align 2, 0
-_0810A58C: .4byte gTasks+0x8
-_0810A590: .4byte gSpecialVar_ItemId
-_0810A594: .4byte sub_810A654
-_0810A598:
- ldr r0, _0810A5AC @ =0x0000016d
- cmp r1, r0
- bne _0810A5B4
- ldr r0, _0810A5B0 @ =sub_810A668
-_0810A5A0:
- bl ItemMenu_SetExitCallback
- adds r0, r5, 0
- bl ItemMenu_StartFadeToExitCallback
- b _0810A63E
- .align 2, 0
-_0810A5AC: .4byte 0x0000016d
-_0810A5B0: .4byte sub_810A668
-_0810A5B4:
- ldrh r0, [r6]
- bl itemid_get_market_price
- lsls r0, 16
- cmp r0, 0
- bne _0810A5F8
- ldrh r0, [r6]
- ldr r1, _0810A5E8 @ =gStringVar1
- bl CopyItemName
- ldr r4, _0810A5EC @ =gStringVar4
- ldr r1, _0810A5F0 @ =gText_OhNoICantBuyThat
- adds r0, r4, 0
- bl StringExpandPlaceholders
- bl sub_80BF8E4
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _0810A5F4 @ =sub_810A1F8
- adds r0, r5, 0
- adds r2, r4, 0
- bl DisplayItemMessageInBag
- b _0810A63E
- .align 2, 0
-_0810A5E8: .4byte gStringVar1
-_0810A5EC: .4byte gStringVar4
-_0810A5F0: .4byte gText_OhNoICantBuyThat
-_0810A5F4: .4byte sub_810A1F8
-_0810A5F8:
- movs r0, 0x1
- strh r0, [r4, 0x10]
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- bne _0810A610
- bl sub_810BB40
- adds r0, r5, 0
- bl sub_810A690
- b _0810A63E
-_0810A610:
- cmp r0, 0x63
- ble _0810A618
- movs r0, 0x63
- strh r0, [r4, 0x4]
-_0810A618:
- ldrh r0, [r6]
- ldr r1, _0810A644 @ =gStringVar1
- bl CopyItemName
- ldr r4, _0810A648 @ =gStringVar4
- ldr r1, _0810A64C @ =gText_HowManyWouldYouLikeToSell
- adds r0, r4, 0
- bl StringExpandPlaceholders
- bl sub_80BF8E4
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _0810A650 @ =sub_810A770
- adds r0, r7, 0
- adds r2, r4, 0
- bl DisplayItemMessageInBag
-_0810A63E:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810A644: .4byte gStringVar1
-_0810A648: .4byte gStringVar4
-_0810A64C: .4byte gText_HowManyWouldYouLikeToSell
-_0810A650: .4byte sub_810A770
- thumb_func_end sub_810A568
-
- thumb_func_start sub_810A654
-sub_810A654: @ 810A654
- push {lr}
- ldr r1, _0810A664 @ =sub_810A67C
- movs r0, 0x2
- movs r2, 0
- bl InitTMCase
- pop {r0}
- bx r0
- .align 2, 0
-_0810A664: .4byte sub_810A67C
- thumb_func_end sub_810A654
-
- thumb_func_start sub_810A668
-sub_810A668: @ 810A668
- push {lr}
- ldr r1, _0810A678 @ =sub_810A67C
- movs r0, 0x2
- movs r2, 0
- bl InitBerryPouch
- pop {r0}
- bx r0
- .align 2, 0
-_0810A678: .4byte sub_810A67C
- thumb_func_end sub_810A668
-
- thumb_func_start sub_810A67C
-sub_810A67C: @ 810A67C
- push {lr}
- ldr r2, _0810A68C @ =CB2_ReturnToField
- movs r0, 0x2
- movs r1, 0x3
- bl GoToBagMenu
- pop {r0}
- bx r0
- .align 2, 0
-_0810A68C: .4byte CB2_ReturnToField
- thumb_func_end sub_810A67C
-
- thumb_func_start sub_810A690
-sub_810A690: @ 810A690
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- ldr r0, _0810A6F4 @ =gTasks+0x8
- adds r4, r0
- ldr r6, _0810A6F8 @ =gStringVar3
- ldr r0, _0810A6FC @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r4, 0x2]
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r0, 16
- bl itemid_get_market_price
- lsls r0, 16
- lsrs r0, 17
- movs r2, 0x10
- ldrsh r1, [r4, r2]
- muls r1, r0
- adds r0, r6, 0
- movs r2, 0
- movs r3, 0x6
- bl ConvertIntToDecimalStringN
- ldr r4, _0810A700 @ =gStringVar4
- ldr r1, _0810A704 @ =gText_ICanPayThisMuch_WouldThatBeOkay
- adds r0, r4, 0
- bl StringExpandPlaceholders
- bl sub_80BF8E4
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r3, _0810A708 @ =sub_810A70C
- adds r0, r5, 0
- adds r2, r4, 0
- bl DisplayItemMessageInBag
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0810A6F4: .4byte gTasks+0x8
-_0810A6F8: .4byte gStringVar3
-_0810A6FC: .4byte gUnknown_203ACFC
-_0810A700: .4byte gStringVar4
-_0810A704: .4byte gText_ICanPayThisMuch_WouldThatBeOkay
-_0810A708: .4byte sub_810A70C
- thumb_func_end sub_810A690
-
- thumb_func_start sub_810A70C
-sub_810A70C: @ 810A70C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0810A71C @ =gUnknown_8452F58
- bl sub_810BB14
- pop {r0}
- bx r0
- .align 2, 0
-_0810A71C: .4byte gUnknown_8452F58
- thumb_func_end sub_810A70C
-
- thumb_func_start sub_810A720
-sub_810A720: @ 810A720
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- ldr r0, _0810A76C @ =gTasks+0x8
- adds r4, r0
- movs r0, 0x2
- bl sub_810BA3C
- movs r0, 0x5
- bl sub_810BA9C
- movs r0, 0x2
- bl PutWindowTilemap
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- ldrb r0, [r4]
- movs r1, 0x1
- bl bag_menu_print_cursor_
- adds r0, r5, 0
- bl sub_810910C
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810A76C: .4byte gTasks+0x8
- thumb_func_end sub_810A720
-
- thumb_func_start sub_810A770
-sub_810A770: @ 810A770
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- sub sp, 0x14
- lsls r0, 24
- lsrs r0, 24
- lsls r5, r0, 2
- adds r5, r0
- lsls r5, 3
- ldr r0, _0810A81C @ =gTasks+0x8
- mov r8, r0
- adds r2, r5, 0
- add r2, r8
- mov r9, r2
- movs r0, 0
- movs r1, 0x1
- bl sub_810B9DC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _0810A820 @ =gStringVar1
- movs r1, 0x1
- movs r2, 0x2
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldr r6, _0810A824 @ =gStringVar4
- ldr r1, _0810A828 @ =gText_TimesStrVar1
- adds r0, r6, 0
- bl StringExpandPlaceholders
- movs r0, 0xA
- str r0, [sp]
- movs r1, 0x1
- str r1, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r0, 0xFF
- str r0, [sp, 0xC]
- str r1, [sp, 0x10]
- adds r0, r4, 0
- movs r1, 0
- adds r2, r6, 0
- movs r3, 0x4
- bl sub_810B8F0
- ldr r0, _0810A82C @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r3, r9
- ldrh r1, [r3, 0x2]
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r0, 16
- bl itemid_get_market_price
- lsls r0, 16
- lsrs r0, 17
- mov r2, r9
- movs r3, 0x10
- ldrsh r1, [r2, r3]
- muls r0, r1
- bl sub_810A834
- bl sub_810BB40
- bl sub_8108908
- movs r0, 0x8
- negs r0, r0
- add r8, r0
- add r5, r8
- ldr r0, _0810A830 @ =sub_810A85C
- str r0, [r5]
- add sp, 0x14
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0810A81C: .4byte gTasks+0x8
-_0810A820: .4byte gStringVar1
-_0810A824: .4byte gStringVar4
-_0810A828: .4byte gText_TimesStrVar1
-_0810A82C: .4byte gUnknown_203ACFC
-_0810A830: .4byte sub_810A85C
- thumb_func_end sub_810A770
-
- thumb_func_start sub_810A834
-sub_810A834: @ 810A834
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- movs r0, 0
- bl sub_810BAD8
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- str r1, [sp]
- movs r1, 0x38
- movs r2, 0xA
- adds r3, r4, 0
- bl PrintMoneyAmount
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_810A834
-
- thumb_func_start sub_810A85C
-sub_810A85C: @ 810A85C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r6, r4, 0
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, _0810A8B4 @ =gTasks+0x8
- adds r5, r0, r1
- adds r0, r5, 0
- adds r0, 0x10
- ldrh r1, [r5, 0x4]
- bl AdjustQuantityAccordingToDPadInput
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810A8BC
- movs r1, 0x10
- ldrsh r0, [r5, r1]
- movs r1, 0x2
- bl sub_81097E4
- ldr r0, _0810A8B8 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r5, 0x2]
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r0, 16
- bl itemid_get_market_price
- lsls r0, 16
- lsrs r0, 17
- movs r2, 0x10
- ldrsh r1, [r5, r2]
- muls r0, r1
- bl sub_810A834
- b _0810A93A
- .align 2, 0
-_0810A8B4: .4byte gTasks+0x8
-_0810A8B8: .4byte gUnknown_203ACFC
-_0810A8BC:
- ldr r0, _0810A8EC @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0810A8F0
- movs r0, 0x5
- bl PlaySE
- movs r0, 0
- bl sub_810BA3C
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- bl sub_8108978
- adds r0, r4, 0
- bl sub_810A690
- b _0810A93A
- .align 2, 0
-_0810A8EC: .4byte gMain
-_0810A8F0:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0810A93A
- movs r0, 0x5
- bl PlaySE
- movs r0, 0
- bl sub_810BA3C
- movs r0, 0x2
- bl sub_810BA3C
- movs r0, 0x5
- bl sub_810BA9C
- movs r0, 0x2
- bl PutWindowTilemap
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- bl sub_8108978
- ldrb r0, [r5]
- movs r1, 0x1
- bl bag_menu_print_cursor_
- adds r0, r6, 0
- bl sub_810910C
-_0810A93A:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_810A85C
-
- thumb_func_start sub_810A940
-sub_810A940: @ 810A940
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, r5, 2
- adds r4, r5
- lsls r4, 3
- ldr r0, _0810A9B4 @ =gTasks+0x8
- adds r4, r0
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- ldr r0, _0810A9B8 @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- ldr r1, _0810A9BC @ =gStringVar1
- bl CopyItemName
- ldr r6, _0810A9C0 @ =gStringVar3
- ldr r0, _0810A9C4 @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x6]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r4, 0x2]
- bl BagGetItemIdByPocketPosition
- lsls r0, 16
- lsrs r0, 16
- bl itemid_get_market_price
- lsls r0, 16
- lsrs r0, 17
- movs r2, 0x10
- ldrsh r1, [r4, r2]
- muls r1, r0
- adds r0, r6, 0
- movs r2, 0
- movs r3, 0x6
- bl ConvertIntToDecimalStringN
- ldr r4, _0810A9C8 @ =gStringVar4
- ldr r1, _0810A9CC @ =gText_TurnedOverItemsWorthYen
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldr r3, _0810A9D0 @ =sub_810A9D4
- adds r0, r5, 0
- movs r1, 0x2
- adds r2, r4, 0
- bl DisplayItemMessageInBag
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0810A9B4: .4byte gTasks+0x8
-_0810A9B8: .4byte gSpecialVar_ItemId
-_0810A9BC: .4byte gStringVar1
-_0810A9C0: .4byte gStringVar3
-_0810A9C4: .4byte gUnknown_203ACFC
-_0810A9C8: .4byte gStringVar4
-_0810A9CC: .4byte gText_TurnedOverItemsWorthYen
-_0810A9D0: .4byte sub_810A9D4
- thumb_func_end sub_810A940
-
- thumb_func_start sub_810A9D4
-sub_810A9D4: @ 810A9D4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- lsls r6, r0, 2
- adds r6, r0
- lsls r6, 3
- ldr r0, _0810AAD8 @ =gTasks+0x8
- mov r10, r0
- adds r1, r6, 0
- add r1, r10
- mov r8, r1
- movs r0, 0xF8
- bl PlaySE
- ldr r5, _0810AADC @ =gSpecialVar_ItemId
- ldrh r0, [r5]
- mov r2, r8
- ldrh r1, [r2, 0x10]
- bl RemoveBagItem
- ldr r3, _0810AAE0 @ =gSaveBlock1Ptr
- ldr r4, [r3]
- movs r7, 0xA4
- lsls r7, 2
- adds r4, r7
- ldrh r0, [r5]
- bl itemid_get_market_price
- lsls r0, 16
- lsrs r0, 17
- mov r2, r8
- movs r3, 0x10
- ldrsh r1, [r2, r3]
- muls r1, r0
- adds r0, r4, 0
- bl AddMoney
- ldrh r0, [r5]
- mov r2, r8
- ldrh r1, [r2, 0x10]
- movs r2, 0x2
- bl RecordItemPurchase
- mov r3, r8
- ldrb r0, [r3]
- ldr r4, _0810AAE4 @ =gUnknown_203ACFC
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r5, r4, 0
- adds r5, 0xE
- adds r1, r2, r5
- movs r3, 0x8
- adds r3, r4
- mov r9, r3
- add r2, r9
- bl DestroyListMenuTask
- ldrb r0, [r4, 0x6]
- bl sub_8108DC8
- ldrb r0, [r4, 0x6]
- bl sub_81089F4
- ldr r0, _0810AAE8 @ =gUnknown_203AD10
- ldr r2, [r0]
- ldrb r1, [r2, 0x5]
- movs r0, 0x3F
- ands r0, r1
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2, 0x5]
- ldrb r0, [r4, 0x6]
- bl sub_810842C
- ldr r0, _0810AAEC @ =gMultiuseListMenuTemplate
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r5, r2, r5
- ldrh r1, [r5]
- add r2, r9
- ldrh r2, [r2]
- bl ListMenuInit
- lsls r0, 24
- lsrs r0, 24
- mov r1, r8
- strh r0, [r1]
- movs r1, 0x2
- bl bag_menu_print_cursor_
- movs r0, 0x2
- bl sub_810BAD8
- lsls r0, 24
- lsrs r0, 24
- bl sub_810BB74
- movs r0, 0x2
- bl sub_810BAD8
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r2, _0810AAE0 @ =gSaveBlock1Ptr
- ldr r0, [r2]
- adds r0, r7
- bl GetMoney
- adds r1, r0, 0
- adds r0, r4, 0
- movs r2, 0
- bl PrintMoneyAmountInMoneyBox
- movs r3, 0x8
- negs r3, r3
- add r10, r3
- add r6, r10
- ldr r0, _0810AAF0 @ =sub_810AAF4
- str r0, [r6]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810AAD8: .4byte gTasks+0x8
-_0810AADC: .4byte gSpecialVar_ItemId
-_0810AAE0: .4byte gSaveBlock1Ptr
-_0810AAE4: .4byte gUnknown_203ACFC
-_0810AAE8: .4byte gUnknown_203AD10
-_0810AAEC: .4byte gMultiuseListMenuTemplate
-_0810AAF0: .4byte sub_810AAF4
- thumb_func_end sub_810A9D4
-
- thumb_func_start sub_810AAF4
-sub_810AAF4: @ 810AAF4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0810AB38 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0810AB0E
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0810AB32
-_0810AB0E:
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x2
- bl sub_810BA3C
- movs r0, 0x2
- bl PutWindowTilemap
- ldr r0, _0810AB3C @ =gUnknown_203AD10
- ldr r2, [r0]
- ldrb r1, [r2, 0x5]
- movs r0, 0x3F
- ands r0, r1
- strb r0, [r2, 0x5]
- adds r0, r4, 0
- bl sub_810A1F8
-_0810AB32:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0810AB38: .4byte gMain
-_0810AB3C: .4byte gUnknown_203AD10
- thumb_func_end sub_810AAF4
-
- thumb_func_start sub_810AB40
-sub_810AB40: @ 810AB40
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r4, r0, 3
- ldr r5, _0810AB64 @ =gTasks+0x8
- adds r1, r4, r5
- movs r0, 0x1
- strh r0, [r1, 0x10]
- movs r3, 0x4
- ldrsh r0, [r1, r3]
- cmp r0, 0x1
- bne _0810AB68
- adds r0, r2, 0
- bl sub_810AC40
- b _0810AB7A
- .align 2, 0
-_0810AB64: .4byte gTasks+0x8
-_0810AB68:
- ldrh r0, [r1, 0x2]
- ldr r1, _0810AB80 @ =gUnknown_841638F
- bl sub_810971C
- adds r0, r5, 0
- subs r0, 0x8
- adds r0, r4, r0
- ldr r1, _0810AB84 @ =sub_810AB88
- str r1, [r0]
-_0810AB7A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810AB80: .4byte gUnknown_841638F
-_0810AB84: .4byte sub_810AB88
- thumb_func_end sub_810AB40
-
- thumb_func_start sub_810AB88
-sub_810AB88: @ 810AB88
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _0810ABB8 @ =gTasks+0x8
- adds r4, r0, r1
- adds r0, r4, 0
- adds r0, 0x10
- ldrh r1, [r4, 0x4]
- bl AdjustQuantityAccordingToDPadInput
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810ABBC
- movs r1, 0x10
- ldrsh r0, [r4, r1]
- movs r1, 0x3
- bl sub_81097E4
- b _0810AC38
- .align 2, 0
-_0810ABB8: .4byte gTasks+0x8
-_0810ABBC:
- ldr r0, _0810ABFC @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0810AC00
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x6
- bl sub_810BAD8
- lsls r0, 24
- lsrs r0, 24
- bl ClearWindowTilemap
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl sub_810BA3C
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- bl sub_8108978
- adds r0, r5, 0
- bl sub_810AC40
- b _0810AC38
- .align 2, 0
-_0810ABFC: .4byte gMain
-_0810AC00:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0810AC38
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl sub_810BA3C
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- ldrb r0, [r4]
- movs r1, 0x1
- bl bag_menu_print_cursor_
- bl sub_8108978
- adds r0, r6, 0
- bl sub_810910C
-_0810AC38:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_810AB88
-
- thumb_func_start sub_810AC40
-sub_810AC40: @ 810AC40
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x14
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- mov r8, r0
- ldr r0, _0810ACCC @ =gTasks+0x8
- mov r9, r0
- mov r7, r8
- add r7, r9
- ldr r5, _0810ACD0 @ =gSpecialVar_ItemId
- ldrh r0, [r5]
- ldrh r1, [r7, 0x10]
- bl AddPCItem
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x1
- bne _0810ACEC
- ldrh r2, [r5]
- ldr r3, _0810ACD4 @ =0x0000ffff
- movs r0, 0x1C
- movs r1, 0
- bl ItemUse_SetQuestLogEvent
- ldrh r0, [r5]
- ldr r1, _0810ACD8 @ =gStringVar1
- bl CopyItemName
- ldr r0, _0810ACDC @ =gStringVar2
- movs r2, 0x10
- ldrsh r1, [r7, r2]
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r4, _0810ACE0 @ =gStringVar4
- ldr r1, _0810ACE4 @ =gUnknown_84163A7
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0x6
- movs r1, 0x3
- bl sub_810B9DC
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x2
- str r1, [sp]
- str r6, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- str r1, [sp, 0xC]
- str r6, [sp, 0x10]
- movs r1, 0x2
- adds r2, r4, 0
- movs r3, 0
- bl sub_810B8F0
- mov r0, r9
- subs r0, 0x8
- add r0, r8
- ldr r1, _0810ACE8 @ =sub_8109F44
- str r1, [r0]
- b _0810ACF8
- .align 2, 0
-_0810ACCC: .4byte gTasks+0x8
-_0810ACD0: .4byte gSpecialVar_ItemId
-_0810ACD4: .4byte 0x0000ffff
-_0810ACD8: .4byte gStringVar1
-_0810ACDC: .4byte gStringVar2
-_0810ACE0: .4byte gStringVar4
-_0810ACE4: .4byte gUnknown_84163A7
-_0810ACE8: .4byte sub_8109F44
-_0810ACEC:
- ldr r2, _0810AD08 @ =gUnknown_84163BB
- ldr r3, _0810AD0C @ =sub_810A1D0
- adds r0, r4, 0
- movs r1, 0x2
- bl DisplayItemMessageInBag
-_0810ACF8:
- add sp, 0x14
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810AD08: .4byte gUnknown_84163BB
-_0810AD0C: .4byte sub_810A1D0
- thumb_func_end sub_810AC40
-
- thumb_func_start UseRegisteredKeyItemOnField
-UseRegisteredKeyItemOnField: @ 810AD10
- push {r4-r6,lr}
- bl InUnionRoom
- cmp r0, 0x1
- bne _0810AD1E
- movs r0, 0
- b _0810ADA0
-_0810AD1E:
- bl DismissMapNamePopup
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- ldr r4, _0810AD80 @ =gSaveBlock1Ptr
- ldr r0, [r4]
- ldr r5, _0810AD84 @ =0x00000296
- adds r1, r0, r5
- ldrh r0, [r1]
- cmp r0, 0
- beq _0810AD98
- movs r1, 0x1
- bl CheckBagHasItem
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x1
- bne _0810AD90
- bl ScriptContext2_Enable
- bl FreezeObjectEvents
- bl sub_805C270
- bl sub_805C780
- ldr r2, _0810AD88 @ =gSpecialVar_ItemId
- ldr r0, [r4]
- adds r0, r5
- ldrh r1, [r0]
- strh r1, [r2]
- ldrh r0, [r0]
- bl ItemId_GetFieldFunc
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0810AD8C @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r6, [r1, 0xE]
- b _0810AD9E
- .align 2, 0
-_0810AD80: .4byte gSaveBlock1Ptr
-_0810AD84: .4byte 0x00000296
-_0810AD88: .4byte gSpecialVar_ItemId
-_0810AD8C: .4byte gTasks
-_0810AD90:
- ldr r0, [r4]
- adds r0, r5
- movs r1, 0
- strh r1, [r0]
-_0810AD98:
- ldr r0, _0810ADA8 @ =gUnknown_81A77A0
- bl ScriptContext1_SetupScript
-_0810AD9E:
- movs r0, 0x1
-_0810ADA0:
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0810ADA8: .4byte gUnknown_81A77A0
- thumb_func_end UseRegisteredKeyItemOnField
-
- thumb_func_start sub_810ADAC
-sub_810ADAC: @ 810ADAC
- push {lr}
- ldr r0, _0810ADCC @ =gUnknown_203ACFC
- ldrb r0, [r0, 0x4]
- cmp r0, 0x6
- beq _0810ADC6
- cmp r0, 0x8
- beq _0810ADC6
- cmp r0, 0x7
- beq _0810ADC6
- cmp r0, 0x9
- beq _0810ADC6
- cmp r0, 0xA
- bne _0810ADD0
-_0810ADC6:
- movs r0, 0x1
- b _0810ADD2
- .align 2, 0
-_0810ADCC: .4byte gUnknown_203ACFC
-_0810ADD0:
- movs r0, 0
-_0810ADD2:
- pop {r1}
- bx r1
- thumb_func_end sub_810ADAC
-
- thumb_func_start sub_810ADD8
-sub_810ADD8: @ 810ADD8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r5, _0810AEBC @ =gUnknown_203AD2C
- movs r0, 0xB2
- lsls r0, 1
- bl AllocZeroed
- str r0, [r5]
- ldr r4, _0810AEC0 @ =gSaveBlock1Ptr
- ldr r1, [r4]
- movs r2, 0xC4
- lsls r2, 2
- adds r1, r2
- movs r2, 0xA8
- bl memcpy
- ldr r0, [r5]
- adds r0, 0xA8
- ldr r1, [r4]
- movs r3, 0xEE
- lsls r3, 2
- adds r1, r3
- movs r2, 0x78
- bl memcpy
- ldr r0, [r5]
- movs r1, 0x90
- lsls r1, 1
- adds r0, r1
- ldr r1, [r4]
- movs r2, 0x86
- lsls r2, 3
- adds r1, r2
- movs r2, 0x34
- bl memcpy
- ldr r2, [r5]
- ldr r0, [r4]
- ldr r3, _0810AEC4 @ =0x00000296
- adds r0, r3
- ldrh r1, [r0]
- movs r3, 0xB0
- lsls r3, 1
- adds r0, r2, r3
- strh r1, [r0]
- ldr r1, _0810AEC8 @ =gUnknown_203ACFC
- ldrh r0, [r1, 0x6]
- adds r3, 0x2
- adds r2, r3
- strh r0, [r2]
- movs r4, 0
- mov r8, r5
- movs r7, 0xAA
- lsls r7, 1
- movs r0, 0xE
- adds r0, r1
- mov r12, r0
- movs r6, 0xAD
- lsls r6, 1
- adds r5, r1, 0
- adds r5, 0x8
-_0810AE54:
- mov r1, r8
- ldr r2, [r1]
- lsls r3, r4, 1
- adds r0, r2, r7
- adds r0, r3
- ldrh r1, [r5]
- strh r1, [r0]
- adds r2, r6
- adds r2, r3
- mov r3, r12
- ldrh r0, [r3]
- strh r0, [r2]
- movs r0, 0x2
- add r12, r0
- adds r5, 0x2
- adds r4, 0x1
- cmp r4, 0x2
- bls _0810AE54
- ldr r4, _0810AEC0 @ =gSaveBlock1Ptr
- ldr r0, [r4]
- movs r1, 0xC4
- lsls r1, 2
- adds r0, r1
- movs r1, 0x2A
- bl ClearItemSlots
- ldr r0, [r4]
- movs r2, 0xEE
- lsls r2, 2
- adds r0, r2
- movs r1, 0x1E
- bl ClearItemSlots
- ldr r0, [r4]
- movs r3, 0x86
- lsls r3, 3
- adds r0, r3
- movs r1, 0xD
- bl ClearItemSlots
- ldr r0, [r4]
- ldr r1, _0810AEC4 @ =0x00000296
- adds r0, r1
- movs r1, 0
- strh r1, [r0]
- bl sub_81089BC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810AEBC: .4byte gUnknown_203AD2C
-_0810AEC0: .4byte gSaveBlock1Ptr
-_0810AEC4: .4byte 0x00000296
-_0810AEC8: .4byte gUnknown_203ACFC
- thumb_func_end sub_810ADD8
-
- thumb_func_start sub_810AECC
-sub_810AECC: @ 810AECC
- push {r4-r7,lr}
- ldr r4, _0810AF64 @ =gSaveBlock1Ptr
- ldr r0, [r4]
- movs r1, 0xC4
- lsls r1, 2
- adds r0, r1
- ldr r5, _0810AF68 @ =gUnknown_203AD2C
- ldr r1, [r5]
- movs r2, 0xA8
- bl memcpy
- ldr r0, [r4]
- movs r2, 0xEE
- lsls r2, 2
- adds r0, r2
- ldr r1, [r5]
- adds r1, 0xA8
- movs r2, 0x78
- bl memcpy
- ldr r0, [r4]
- movs r3, 0x86
- lsls r3, 3
- adds r0, r3
- ldr r1, [r5]
- movs r2, 0x90
- lsls r2, 1
- adds r1, r2
- movs r2, 0x34
- bl memcpy
- ldr r1, [r4]
- ldr r2, [r5]
- movs r3, 0xB0
- lsls r3, 1
- adds r0, r2, r3
- ldrh r0, [r0]
- ldr r3, _0810AF6C @ =0x00000296
- adds r1, r3
- strh r0, [r1]
- ldr r1, _0810AF70 @ =gUnknown_203ACFC
- movs r3, 0xB1
- lsls r3, 1
- adds r0, r2, r3
- ldrh r0, [r0]
- strh r0, [r1, 0x6]
- movs r4, 0
- mov r12, r5
- adds r3, r1, 0
- adds r3, 0x8
- mov r7, r12
- movs r6, 0xAA
- lsls r6, 1
- movs r5, 0xAD
- lsls r5, 1
-_0810AF3A:
- lsls r2, r4, 1
- ldr r1, [r7]
- adds r0, r1, r6
- adds r0, r2
- ldrh r0, [r0]
- strh r0, [r3]
- adds r1, r5
- adds r1, r2
- ldrh r0, [r1]
- strh r0, [r3, 0x6]
- adds r3, 0x2
- adds r4, 0x1
- cmp r4, 0x2
- bls _0810AF3A
- mov r1, r12
- ldr r0, [r1]
- bl Free
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810AF64: .4byte gSaveBlock1Ptr
-_0810AF68: .4byte gUnknown_203AD2C
-_0810AF6C: .4byte 0x00000296
-_0810AF70: .4byte gUnknown_203ACFC
- thumb_func_end sub_810AECC
-
- thumb_func_start sub_810AF74
-sub_810AF74: @ 810AF74
- push {lr}
- bl sub_810ADD8
- movs r0, 0xD
- movs r1, 0x1
- bl AddBagItem
- movs r0, 0x4
- movs r1, 0x1
- bl AddBagItem
- ldr r2, _0810AF98 @ =SetCB2ToReshowScreenAfterMenu2
- movs r0, 0x6
- movs r1, 0
- bl GoToBagMenu
- pop {r0}
- bx r0
- .align 2, 0
-_0810AF98: .4byte SetCB2ToReshowScreenAfterMenu2
- thumb_func_end sub_810AF74
-
- thumb_func_start sub_810AF9C
-sub_810AF9C: @ 810AF9C
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r6, r0, 3
- ldr r7, _0810AFCC @ =gTasks+0x8
- adds r5, r6, r7
- ldr r0, _0810AFD0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0810B06A
- movs r0, 0x10
- ldrsh r1, [r5, r0]
- cmp r1, 0xCC
- beq _0810AFE4
- cmp r1, 0xCC
- bgt _0810AFD4
- cmp r1, 0x66
- beq _0810AFE4
- b _0810B064
- .align 2, 0
-_0810AFCC: .4byte gTasks+0x8
-_0810AFD0: .4byte gPaletteFade
-_0810AFD4:
- movs r0, 0x99
- lsls r0, 1
- cmp r1, r0
- beq _0810AFF6
- adds r0, 0x66
- cmp r1, r0
- beq _0810B01C
- b _0810B064
-_0810AFE4:
- movs r0, 0xF6
- bl PlaySE
- adds r0, r4, 0
- movs r1, 0x1
- movs r2, 0
- bl sub_81091D0
- b _0810B064
-_0810AFF6:
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r5]
- movs r1, 0x2
- bl bag_menu_print_cursor_
- movs r0, 0x1
- bl sub_8109140
- ldr r1, _0810B018 @ =gSpecialVar_ItemId
- movs r0, 0x4
- strh r0, [r1]
- adds r0, r4, 0
- bl sub_8109890
- b _0810B064
- .align 2, 0
-_0810B018: .4byte gSpecialVar_ItemId
-_0810B01C:
- movs r0, 0x5
- bl PlaySE
- movs r0, 0xA
- bl sub_810BA3C
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x1
- bl CopyWindowToVram
- ldrb r0, [r5]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- bl sub_810AECC
- bl sub_8108CB4
- adds r0, r7, 0
- subs r0, 0x8
- adds r0, r6, r0
- ldr r1, _0810B060 @ =sub_810B070
- str r1, [r0]
- b _0810B06A
- .align 2, 0
-_0810B060: .4byte sub_810B070
-_0810B064:
- ldrh r0, [r5, 0x10]
- adds r0, 0x1
- strh r0, [r5, 0x10]
-_0810B06A:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_810AF9C
-
- thumb_func_start sub_810B070
-sub_810B070: @ 810B070
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x2
- negs r1, r1
- movs r2, 0
- str r2, [sp]
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _0810B0A4 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0810B0A8 @ =sub_810B0AC
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0810B0A4: .4byte gTasks
-_0810B0A8: .4byte sub_810B0AC
- thumb_func_end sub_810B070
-
- thumb_func_start sub_810B0AC
-sub_810B0AC: @ 810B0AC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0810B0DC @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0810B0FE
- ldr r0, _0810B0E0 @ =sub_8108CFC
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0810B0FE
- ldr r0, _0810B0E4 @ =gUnknown_203AD10
- ldr r0, [r0]
- ldr r0, [r0]
- cmp r0, 0
- beq _0810B0E8
- bl SetMainCallback2
- b _0810B0F0
- .align 2, 0
-_0810B0DC: .4byte gPaletteFade
-_0810B0E0: .4byte sub_8108CFC
-_0810B0E4: .4byte gUnknown_203AD10
-_0810B0E8:
- ldr r0, _0810B104 @ =gUnknown_203ACFC
- ldr r0, [r0]
- bl SetMainCallback2
-_0810B0F0:
- bl sub_8108978
- bl sub_8108B04
- adds r0, r4, 0
- bl DestroyTask
-_0810B0FE:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0810B104: .4byte gUnknown_203ACFC
- thumb_func_end sub_810B0AC
-
- thumb_func_start sub_810B108
-sub_810B108: @ 810B108
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_810ADD8
- movs r0, 0xD
- movs r1, 0x1
- bl AddBagItem
- movs r0, 0xE
- movs r1, 0x1
- bl AddBagItem
- movs r0, 0xB7
- lsls r0, 1
- movs r1, 0x1
- bl AddBagItem
- movs r0, 0xB6
- lsls r0, 1
- movs r1, 0x1
- bl AddBagItem
- movs r0, 0x4
- movs r1, 0x5
- bl AddBagItem
- movs r0, 0x3
- movs r1, 0x1
- bl AddBagItem
- movs r0, 0x8
- movs r1, 0x1
- bl AddBagItem
- cmp r4, 0x7
- beq _0810B160
- cmp r4, 0x8
- beq _0810B16C
- ldr r2, _0810B15C @ =CB2_ReturnToTeachyTV
- adds r0, r4, 0
- b _0810B170
- .align 2, 0
-_0810B15C: .4byte CB2_ReturnToTeachyTV
-_0810B160:
- ldr r2, _0810B168 @ =SetCB2ToReshowScreenAfterMenu2
- movs r0, 0x7
- b _0810B170
- .align 2, 0
-_0810B168: .4byte SetCB2ToReshowScreenAfterMenu2
-_0810B16C:
- ldr r2, _0810B17C @ =SetCB2ToReshowScreenAfterMenu2
- movs r0, 0x8
-_0810B170:
- movs r1, 0
- bl GoToBagMenu
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0810B17C: .4byte SetCB2ToReshowScreenAfterMenu2
- thumb_func_end sub_810B108
-
- thumb_func_start sub_810B180
-sub_810B180: @ 810B180
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0810B198 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _0810B19C
- movs r0, 0
- b _0810B1BC
- .align 2, 0
-_0810B198: .4byte gMain
-_0810B19C:
- bl sub_810AECC
- bl SetTeachyTvControllerModeToResume
- ldr r0, _0810B1C4 @ =gUnknown_203AD10
- ldr r1, [r0]
- ldr r0, _0810B1C8 @ =CB2_ReturnToTeachyTV
- str r0, [r1]
- ldr r1, _0810B1CC @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0810B1D0 @ =sub_810B070
- str r1, [r0]
- movs r0, 0x1
-_0810B1BC:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0810B1C4: .4byte gUnknown_203AD10
-_0810B1C8: .4byte CB2_ReturnToTeachyTV
-_0810B1CC: .4byte gTasks
-_0810B1D0: .4byte sub_810B070
- thumb_func_end sub_810B180
-
- thumb_func_start sub_810B1D4
-sub_810B1D4: @ 810B1D4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r5, r0, 3
- ldr r6, _0810B220 @ =gTasks+0x8
- adds r7, r5, r6
- ldr r0, _0810B224 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0810B1F2
- b _0810B372
-_0810B1F2:
- adds r0, r4, 0
- bl sub_810B180
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810B202
- b _0810B372
-_0810B202:
- movs r0, 0x10
- ldrsh r1, [r7, r0]
- movs r0, 0xCC
- lsls r0, 1
- cmp r1, r0
- beq _0810B29E
- cmp r1, r0
- bgt _0810B232
- cmp r1, 0xCC
- beq _0810B266
- cmp r1, 0xCC
- bgt _0810B228
- cmp r1, 0x66
- beq _0810B254
- b _0810B36C
- .align 2, 0
-_0810B220: .4byte gTasks+0x8
-_0810B224: .4byte gPaletteFade
-_0810B228:
- movs r0, 0x99
- lsls r0, 1
- cmp r1, r0
- beq _0810B290
- b _0810B36C
-_0810B232:
- movs r0, 0x99
- lsls r0, 2
- cmp r1, r0
- beq _0810B32C
- cmp r1, r0
- bgt _0810B246
- subs r0, 0x66
- cmp r1, r0
- beq _0810B32C
- b _0810B36C
-_0810B246:
- ldr r0, _0810B250 @ =0x000002ca
- cmp r1, r0
- bne _0810B24E
- b _0810B344
-_0810B24E:
- b _0810B36C
- .align 2, 0
-_0810B250: .4byte 0x000002ca
-_0810B254:
- movs r0, 0xF6
- bl PlaySE
- adds r0, r4, 0
- movs r1, 0x1
- movs r2, 0
- bl sub_81091D0
- b _0810B36C
-_0810B266:
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r7]
- movs r1, 0x2
- bl bag_menu_print_cursor_
- movs r0, 0x1
- bl sub_8109140
- ldr r1, _0810B28C @ =gSpecialVar_ItemId
- movs r2, 0xB7
- lsls r2, 1
- adds r0, r2, 0
- strh r0, [r1]
- adds r0, r4, 0
- bl sub_8109890
- b _0810B36C
- .align 2, 0
-_0810B28C: .4byte gSpecialVar_ItemId
-_0810B290:
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x1
- bl Menu_MoveCursorNoWrapAround
- b _0810B36C
-_0810B29E:
- movs r0, 0x5
- bl PlaySE
- ldr r0, _0810B318 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, _0810B31C @ =gSpecialVar_ItemId
- ldrh r1, [r1]
- ldr r2, _0810B320 @ =0x00000296
- adds r0, r2
- strh r1, [r0]
- movs r0, 0xA
- bl sub_810BA3C
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- ldrb r0, [r7]
- ldr r4, _0810B324 @ =gUnknown_203ACFC
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r5, r4, 0
- adds r5, 0xE
- adds r1, r2, r5
- adds r6, r4, 0
- adds r6, 0x8
- adds r2, r6
- bl DestroyListMenuTask
- ldrb r0, [r4, 0x6]
- bl sub_810842C
- ldr r0, _0810B328 @ =gMultiuseListMenuTemplate
- ldrh r2, [r4, 0x6]
- lsls r2, 1
- adds r5, r2, r5
- ldrh r1, [r5]
- adds r2, r6
- ldrh r2, [r2]
- bl ListMenuInit
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r7]
- movs r0, 0
- bl sub_8109140
- ldrb r0, [r7]
- movs r1, 0x1
- bl bag_menu_print_cursor_
- movs r0, 0
- movs r1, 0x1
- bl CopyWindowToVram
- b _0810B36C
- .align 2, 0
-_0810B318: .4byte gSaveBlock1Ptr
-_0810B31C: .4byte gSpecialVar_ItemId
-_0810B320: .4byte 0x00000296
-_0810B324: .4byte gUnknown_203ACFC
-_0810B328: .4byte gMultiuseListMenuTemplate
-_0810B32C:
- ldr r1, _0810B340 @ =gMain
- movs r0, 0
- strh r0, [r1, 0x2E]
- movs r0, 0x80
- strh r0, [r1, 0x30]
- ldrb r0, [r7]
- bl ListMenu_ProcessInput
- b _0810B36C
- .align 2, 0
-_0810B340: .4byte gMain
-_0810B344:
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r7]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- bl sub_810AECC
- bl sub_8108CB4
- adds r0, r6, 0
- subs r0, 0x8
- adds r0, r5, r0
- ldr r1, _0810B368 @ =sub_810B070
- str r1, [r0]
- b _0810B372
- .align 2, 0
-_0810B368: .4byte sub_810B070
-_0810B36C:
- ldrh r0, [r7, 0x10]
- adds r0, 0x1
- strh r0, [r7, 0x10]
-_0810B372:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_810B1D4
-
- thumb_func_start sub_810B378
-sub_810B378: @ 810B378
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r6, r0, 3
- ldr r7, _0810B3B0 @ =gTasks+0x8
- adds r4, r6, r7
- ldr r0, _0810B3B4 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0810B396
- b _0810B4B6
-_0810B396:
- adds r0, r5, 0
- bl sub_810B180
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810B3B8
- bl FreeRestoreBattleData
- bl LoadPlayerParty
- b _0810B4B6
- .align 2, 0
-_0810B3B0: .4byte gTasks+0x8
-_0810B3B4: .4byte gPaletteFade
-_0810B3B8:
- movs r0, 0x10
- ldrsh r1, [r4, r0]
- movs r0, 0xCC
- lsls r0, 1
- cmp r1, r0
- beq _0810B41A
- cmp r1, r0
- bgt _0810B3E0
- cmp r1, 0xCC
- beq _0810B408
- cmp r1, 0xCC
- bgt _0810B3D6
- cmp r1, 0x66
- beq _0810B408
- b _0810B4B0
-_0810B3D6:
- movs r0, 0x99
- lsls r0, 1
- cmp r1, r0
- beq _0810B41A
- b _0810B4B0
-_0810B3E0:
- movs r0, 0x99
- lsls r0, 2
- cmp r1, r0
- beq _0810B428
- cmp r1, r0
- bgt _0810B3F4
- subs r0, 0x66
- cmp r1, r0
- beq _0810B428
- b _0810B4B0
-_0810B3F4:
- ldr r0, _0810B404 @ =0x000002ca
- cmp r1, r0
- beq _0810B440
- adds r0, 0x66
- cmp r1, r0
- beq _0810B468
- b _0810B4B0
- .align 2, 0
-_0810B404: .4byte 0x000002ca
-_0810B408:
- movs r0, 0xF6
- bl PlaySE
- adds r0, r5, 0
- movs r1, 0x1
- movs r2, 0
- bl sub_81091D0
- b _0810B4B0
-_0810B41A:
- ldr r1, _0810B424 @ =gMain
- movs r0, 0
- strh r0, [r1, 0x2E]
- movs r0, 0x80
- b _0810B430
- .align 2, 0
-_0810B424: .4byte gMain
-_0810B428:
- ldr r1, _0810B43C @ =gMain
- movs r0, 0
- strh r0, [r1, 0x2E]
- movs r0, 0x40
-_0810B430:
- strh r0, [r1, 0x30]
- ldrb r0, [r4]
- bl ListMenu_ProcessInput
- b _0810B4B0
- .align 2, 0
-_0810B43C: .4byte gMain
-_0810B440:
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r4]
- movs r1, 0x2
- bl bag_menu_print_cursor_
- movs r0, 0x1
- bl sub_8109140
- ldr r1, _0810B464 @ =gSpecialVar_ItemId
- movs r0, 0x4
- strh r0, [r1]
- adds r0, r5, 0
- bl sub_8109890
- b _0810B4B0
- .align 2, 0
-_0810B464: .4byte gSpecialVar_ItemId
-_0810B468:
- movs r0, 0x5
- bl PlaySE
- movs r0, 0xA
- bl sub_810BA3C
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x1
- bl CopyWindowToVram
- ldrb r0, [r4]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- bl sub_810AECC
- bl sub_8108CB4
- adds r0, r7, 0
- subs r0, 0x8
- adds r0, r6, r0
- ldr r1, _0810B4AC @ =sub_810B070
- str r1, [r0]
- b _0810B4B6
- .align 2, 0
-_0810B4AC: .4byte sub_810B070
-_0810B4B0:
- ldrh r0, [r4, 0x10]
- adds r0, 0x1
- strh r0, [r4, 0x10]
-_0810B4B6:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_810B378
-
- thumb_func_start sub_810B4BC
-sub_810B4BC: @ 810B4BC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- mov r8, r0
- ldr r0, _0810B504 @ =gTasks+0x8
- mov r9, r0
- mov r5, r8
- add r5, r9
- ldr r0, _0810B508 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r7, 0x80
- adds r0, r7, 0
- ands r0, r1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0
- bne _0810B5C6
- adds r0, r4, 0
- bl sub_810B180
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810B50C
- bl FreeRestoreBattleData
- bl LoadPlayerParty
- b _0810B5C6
- .align 2, 0
-_0810B504: .4byte gTasks+0x8
-_0810B508: .4byte gPaletteFade
-_0810B50C:
- movs r0, 0x10
- ldrsh r1, [r5, r0]
- cmp r1, 0xCC
- beq _0810B53C
- cmp r1, 0xCC
- bgt _0810B51E
- cmp r1, 0x66
- beq _0810B528
- b _0810B5C0
-_0810B51E:
- movs r0, 0x99
- lsls r0, 1
- cmp r1, r0
- beq _0810B564
- b _0810B5C0
-_0810B528:
- ldr r0, _0810B538 @ =gMain
- strh r6, [r0, 0x2E]
- strh r7, [r0, 0x30]
- ldrb r0, [r5]
- bl ListMenu_ProcessInput
- b _0810B5C0
- .align 2, 0
-_0810B538: .4byte gMain
-_0810B53C:
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r5]
- movs r1, 0x2
- bl bag_menu_print_cursor_
- movs r0, 0x1
- bl sub_8109140
- ldr r1, _0810B560 @ =gSpecialVar_ItemId
- movs r0, 0xE
- strh r0, [r1]
- adds r0, r4, 0
- bl sub_8109890
- b _0810B5C0
- .align 2, 0
-_0810B560: .4byte gSpecialVar_ItemId
-_0810B564:
- movs r0, 0x5
- bl PlaySE
- movs r0, 0xA
- bl sub_810BA3C
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x1
- bl CopyWindowToVram
- ldrb r0, [r5]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- bl sub_810AECC
- ldr r1, _0810B5B0 @ =gItemUseCB
- ldr r0, _0810B5B4 @ =ItemUseCB_MedicineStep
- str r0, [r1]
- ldr r0, _0810B5B8 @ =ChooseMonForInBattleItem
- bl ItemMenu_SetExitCallback
- mov r0, r9
- subs r0, 0x8
- add r0, r8
- ldr r1, _0810B5BC @ =sub_810B070
- str r1, [r0]
- b _0810B5C6
- .align 2, 0
-_0810B5B0: .4byte gItemUseCB
-_0810B5B4: .4byte ItemUseCB_MedicineStep
-_0810B5B8: .4byte ChooseMonForInBattleItem
-_0810B5BC: .4byte sub_810B070
-_0810B5C0:
- ldrh r0, [r5, 0x10]
- adds r0, 0x1
- strh r0, [r5, 0x10]
-_0810B5C6:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_810B4BC
-
- thumb_func_start sub_810B5D4
-sub_810B5D4: @ 810B5D4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- mov r8, r0
- ldr r0, _0810B624 @ =gTasks+0x8
- mov r9, r0
- mov r6, r8
- add r6, r9
- ldr r0, _0810B628 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r7, 0x80
- adds r0, r7, 0
- ands r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _0810B6E6
- adds r0, r4, 0
- bl sub_810B180
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0810B6E6
- movs r2, 0x10
- ldrsh r1, [r6, r2]
- cmp r1, 0xCC
- beq _0810B64E
- cmp r1, 0xCC
- bgt _0810B62C
- cmp r1, 0x66
- beq _0810B63C
- b _0810B6E0
- .align 2, 0
-_0810B624: .4byte gTasks+0x8
-_0810B628: .4byte gPaletteFade
-_0810B62C:
- movs r0, 0x99
- lsls r0, 1
- cmp r1, r0
- beq _0810B660
- adds r0, 0x66
- cmp r1, r0
- beq _0810B68C
- b _0810B6E0
-_0810B63C:
- movs r0, 0xF6
- bl PlaySE
- adds r0, r4, 0
- movs r1, 0x1
- movs r2, 0
- bl sub_81091D0
- b _0810B6E0
-_0810B64E:
- ldr r0, _0810B65C @ =gMain
- strh r5, [r0, 0x2E]
- strh r7, [r0, 0x30]
- ldrb r0, [r6]
- bl ListMenu_ProcessInput
- b _0810B6E0
- .align 2, 0
-_0810B65C: .4byte gMain
-_0810B660:
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r6]
- movs r1, 0x2
- bl bag_menu_print_cursor_
- movs r0, 0x1
- bl sub_8109140
- ldr r1, _0810B688 @ =gSpecialVar_ItemId
- movs r2, 0xB6
- lsls r2, 1
- adds r0, r2, 0
- strh r0, [r1]
- adds r0, r4, 0
- bl sub_8109890
- b _0810B6E0
- .align 2, 0
-_0810B688: .4byte gSpecialVar_ItemId
-_0810B68C:
- movs r0, 0x5
- bl PlaySE
- movs r0, 0xA
- bl sub_810BA3C
- movs r0, 0x6
- bl sub_810BA3C
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x1
- bl CopyWindowToVram
- ldrb r0, [r6]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- bl sub_810AECC
- ldr r0, _0810B6D4 @ =gUnknown_203AD10
- ldr r1, [r0]
- ldr r0, _0810B6D8 @ =PokeDude_InitTMCase
- str r0, [r1]
- mov r0, r9
- subs r0, 0x8
- add r0, r8
- ldr r1, _0810B6DC @ =sub_810B070
- str r1, [r0]
- b _0810B6E6
- .align 2, 0
-_0810B6D4: .4byte gUnknown_203AD10
-_0810B6D8: .4byte PokeDude_InitTMCase
-_0810B6DC: .4byte sub_810B070
-_0810B6E0:
- ldrh r0, [r6, 0x10]
- adds r0, 0x1
- strh r0, [r6, 0x10]
-_0810B6E6:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_810B5D4
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/macros/event.inc b/asm/macros/event.inc
index 1be118154..7e95af9f4 100644
--- a/asm/macros/event.inc
+++ b/asm/macros/event.inc
@@ -1633,3 +1633,10 @@
compare VAR_RESULT, 2
goto_if_eq \dest
.endm
+
+ .macro braillemessage_wait text:req
+ setvar VAR_0x8006, 0
+ braillemessage \text
+ getbraillestringwidth \text
+ call EventScript_BrailleCursorWaitButton
+ .endm
diff --git a/asm/overworld.s b/asm/overworld.s
index 0b2e99ebf..92ffbd038 100644
--- a/asm/overworld.s
+++ b/asm/overworld.s
@@ -4757,7 +4757,7 @@ _0805713C: .4byte gPlayerAvatar
thumb_func_start sub_8057140
sub_8057140: @ 8057140
push {lr}
- ldr r0, _08057158 @ =gUnknown_300502C
+ ldr r0, _08057158 @ =gLocalLinkPlayerId
ldrb r0, [r0]
bl sub_8058504
lsls r0, 24
@@ -4766,13 +4766,13 @@ sub_8057140: @ 8057140
pop {r0}
bx r0
.align 2, 0
-_08057158: .4byte gUnknown_300502C
+_08057158: .4byte gLocalLinkPlayerId
thumb_func_end sub_8057140
thumb_func_start sub_805715C
sub_805715C: @ 805715C
push {lr}
- ldr r0, _08057174 @ =gUnknown_300502C
+ ldr r0, _08057174 @ =gLocalLinkPlayerId
ldrb r0, [r0]
bl sub_8058504
lsls r0, 24
@@ -4781,7 +4781,7 @@ sub_805715C: @ 805715C
pop {r0}
bx r0
.align 2, 0
-_08057174: .4byte gUnknown_300502C
+_08057174: .4byte gLocalLinkPlayerId
thumb_func_end sub_805715C
thumb_func_start sub_8057178
@@ -4794,7 +4794,7 @@ sub_8057178: @ 8057178
adds r1, r4, 0
bl GetCameraFocusCoords
mov r2, sp
- ldr r0, _080571A4 @ =gUnknown_300502C
+ ldr r0, _080571A4 @ =gLocalLinkPlayerId
ldrb r1, [r0]
ldrh r0, [r2]
adds r0, r1
@@ -4807,7 +4807,7 @@ sub_8057178: @ 8057178
pop {r0}
bx r0
.align 2, 0
-_080571A4: .4byte gUnknown_300502C
+_080571A4: .4byte gLocalLinkPlayerId
thumb_func_end sub_8057178
thumb_func_start sub_80571A8
@@ -4823,13 +4823,13 @@ sub_80571A8: @ 80571A8
bl GetCameraFocusCoords
mov r3, sp
mov r2, sp
- ldr r0, _08057224 @ =gUnknown_300502C
+ ldr r0, _08057224 @ =gLocalLinkPlayerId
ldrb r1, [r0]
ldrh r0, [r2]
subs r0, r1
strh r0, [r3]
movs r6, 0
- ldr r0, _08057228 @ =gUnknown_3005030
+ ldr r0, _08057228 @ =gFieldLinkPlayerCount
mov r8, r4
ldrb r0, [r0]
cmp r6, r0
@@ -4859,7 +4859,7 @@ _080571D8:
adds r0, r6, 0x1
lsls r0, 16
lsrs r6, r0, 16
- ldr r0, _08057228 @ =gUnknown_3005030
+ ldr r0, _08057228 @ =gFieldLinkPlayerCount
ldrb r0, [r0]
cmp r6, r0
bcc _080571D8
@@ -4872,8 +4872,8 @@ _08057212:
pop {r0}
bx r0
.align 2, 0
-_08057224: .4byte gUnknown_300502C
-_08057228: .4byte gUnknown_3005030
+_08057224: .4byte gLocalLinkPlayerId
+_08057228: .4byte gFieldLinkPlayerCount
_0805722C: .4byte gLinkPlayers
thumb_func_end sub_80571A8
@@ -4881,7 +4881,7 @@ _0805722C: .4byte gLinkPlayers
sub_8057230: @ 8057230
push {r4,r5,lr}
movs r4, 0
- ldr r0, _08057264 @ =gUnknown_3005030
+ ldr r0, _08057264 @ =gFieldLinkPlayerCount
ldrb r0, [r0]
cmp r4, r0
bcs _0805725E
@@ -4898,7 +4898,7 @@ _0805723E:
adds r0, r4, 0x1
lsls r0, 16
lsrs r4, r0, 16
- ldr r0, _08057264 @ =gUnknown_3005030
+ ldr r0, _08057264 @ =gFieldLinkPlayerCount
ldrb r0, [r0]
cmp r4, r0
bcc _0805723E
@@ -4907,7 +4907,7 @@ _0805725E:
pop {r0}
bx r0
.align 2, 0
-_08057264: .4byte gUnknown_3005030
+_08057264: .4byte gFieldLinkPlayerCount
_08057268: .4byte gLinkPlayers
thumb_func_end sub_8057230
@@ -5647,7 +5647,7 @@ c1_link_related: @ 8057884
cmp r0, 0
bne _080578C0
_0805789E:
- ldr r0, _080578CC @ =gUnknown_300502C
+ ldr r0, _080578CC @ =gLocalLinkPlayerId
ldrb r4, [r0]
ldr r0, _080578D0 @ =gLinkPartnersHeldKeys
adds r1, r4, 0
@@ -5666,7 +5666,7 @@ _080578C0:
bx r0
.align 2, 0
_080578C8: .4byte gWirelessCommType
-_080578CC: .4byte gUnknown_300502C
+_080578CC: .4byte gLocalLinkPlayerId
_080578D0: .4byte gLinkPartnersHeldKeys
_080578D4: .4byte gUnknown_3000E84
thumb_func_end c1_link_related
@@ -5753,7 +5753,7 @@ sub_8057954: @ 8057954
push {r4,lr}
lsls r0, 16
lsrs r3, r0, 16
- ldr r0, _08057974 @ =gUnknown_3005030
+ ldr r0, _08057974 @ =gFieldLinkPlayerCount
ldrb r2, [r0]
movs r1, 0
cmp r1, r2
@@ -5767,7 +5767,7 @@ _08057966:
movs r0, 0
b _08057984
.align 2, 0
-_08057974: .4byte gUnknown_3005030
+_08057974: .4byte gFieldLinkPlayerCount
_08057978: .4byte gUnknown_3000E80
_0805797C:
adds r1, 0x1
@@ -5786,7 +5786,7 @@ sub_805798C: @ 805798C
push {r4,lr}
lsls r0, 16
lsrs r3, r0, 16
- ldr r0, _080579AC @ =gUnknown_3005030
+ ldr r0, _080579AC @ =gFieldLinkPlayerCount
ldrb r2, [r0]
movs r1, 0
cmp r1, r2
@@ -5800,7 +5800,7 @@ _0805799E:
movs r0, 0x1
b _080579BC
.align 2, 0
-_080579AC: .4byte gUnknown_3005030
+_080579AC: .4byte gFieldLinkPlayerCount
_080579B0: .4byte gUnknown_3000E80
_080579B4:
adds r1, 0x1
@@ -6499,7 +6499,7 @@ sub_8057EC0: @ 8057EC0
cmp r2, r1
bne _08057EE6
ldr r1, _08057F08 @ =gUnknown_3000E80
- ldr r0, _08057F0C @ =gUnknown_300502C
+ ldr r0, _08057F0C @ =gLocalLinkPlayerId
ldrb r0, [r0]
adds r0, r1
ldrb r0, [r0]
@@ -6511,7 +6511,7 @@ _08057EE6:
cmp r1, r0
bne _08057F14
ldr r1, _08057F08 @ =gUnknown_3000E80
- ldr r0, _08057F0C @ =gUnknown_300502C
+ ldr r0, _08057F0C @ =gLocalLinkPlayerId
ldrb r0, [r0]
adds r0, r1
ldrb r0, [r0]
@@ -6524,7 +6524,7 @@ _08057EFC:
_08057F00: .4byte gUnknown_3000E84
_08057F04: .4byte sub_8057E1C
_08057F08: .4byte gUnknown_3000E80
-_08057F0C: .4byte gUnknown_300502C
+_08057F0C: .4byte gLocalLinkPlayerId
_08057F10: .4byte sub_8057E10
_08057F14:
movs r0, 0x82
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index 358ea8b32..115c9567b 100644
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -1619,7 +1619,7 @@ _0808C594: .4byte gUnknown_8418690
_0808C598:
movs r0, 0x1
movs r1, 0
- bl fade_screen
+ bl FadeScreen
movs r0, 0x4
strh r0, [r5, 0x8]
b _0808C69C
@@ -22001,7 +22001,7 @@ GetItemIconPic: @ 8096674
lsls r0, 16
lsrs r0, 16
movs r1, 0
- bl sub_8098974
+ bl GetItemIconGfxPtr
pop {r1}
bx r1
thumb_func_end GetItemIconPic
@@ -22012,7 +22012,7 @@ GetItemIconPalette: @ 8096684
lsls r0, 16
lsrs r0, 16
movs r1, 0x1
- bl sub_8098974
+ bl GetItemIconGfxPtr
pop {r1}
bx r1
thumb_func_end GetItemIconPalette
diff --git a/asm/script_movement.s b/asm/script_movement.s
index 7a7adec6c..7b3a70a25 100644
--- a/asm/script_movement.s
+++ b/asm/script_movement.s
@@ -482,7 +482,7 @@ _0809777C:
lsls r0, 2
ldr r1, _080977A8 @ =gObjectEvents
adds r0, r1
- bl npc_sync_anim_pause_bits
+ bl UnfreezeObjectEvent
_08097792:
adds r0, r5, 0x1
lsls r0, 24
diff --git a/asm/union_room.s b/asm/union_room.s
deleted file mode 100644
index cd549c173..000000000
--- a/asm/union_room.s
+++ /dev/null
@@ -1,11147 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_811586C
-sub_811586C: @ 811586C
- push {r4-r6,lr}
- sub sp, 0x8
- adds r4, r1, 0
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r4, 24
- lsrs r4, 24
- lsls r2, 24
- lsrs r5, r2, 24
- adds r0, r6, 0
- movs r1, 0x11
- bl FillWindowPixelBuffer
- lsls r4, 8
- movs r0, 0x80
- lsls r0, 3
- cmp r4, r0
- beq _081158BC
- cmp r4, r0
- bgt _0811589E
- movs r0, 0x80
- lsls r0, 2
- cmp r4, r0
- beq _081158B0
- b _0811590E
-_0811589E:
- movs r0, 0x94
- lsls r0, 6
- cmp r4, r0
- beq _081158CC
- movs r0, 0xD4
- lsls r0, 6
- cmp r4, r0
- beq _081158F0
- b _0811590E
-_081158B0:
- ldr r1, _081158B8 @ =gUnknown_845742C
- subs r0, r5, 0x1
- lsls r0, 2
- b _081158D4
- .align 2, 0
-_081158B8: .4byte gUnknown_845742C
-_081158BC:
- ldr r1, _081158C8 @ =gUnknown_845742C
- subs r0, r5, 0x1
- lsls r0, 2
- adds r1, 0x14
- b _081158D4
- .align 2, 0
-_081158C8: .4byte gUnknown_845742C
-_081158CC:
- ldr r1, _081158EC @ =gUnknown_845742C
- subs r0, r5, 0x1
- lsls r0, 2
- adds r1, 0x28
-_081158D4:
- adds r0, r1
- ldr r2, [r0]
- movs r0, 0x2
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- adds r0, r6, 0
- movs r1, 0x2
- movs r3, 0
- bl sub_811A444
- b _0811590E
- .align 2, 0
-_081158EC: .4byte gUnknown_845742C
-_081158F0:
- ldr r1, _08115920 @ =gUnknown_845742C
- subs r0, r5, 0x1
- lsls r0, 2
- adds r1, 0x3C
- adds r0, r1
- ldr r2, [r0]
- movs r0, 0x2
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- adds r0, r6, 0
- movs r1, 0x2
- movs r3, 0
- bl sub_811A444
-_0811590E:
- adds r0, r6, 0
- movs r1, 0x2
- bl CopyWindowToVram
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08115920: .4byte gUnknown_845742C
- thumb_func_end sub_811586C
-
- thumb_func_start sub_8115924
-sub_8115924: @ 8115924
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x20
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r6, _08115994 @ =gSaveBlock2Ptr
- ldr r2, [r6]
- movs r0, 0x2
- str r0, [sp]
- movs r0, 0
- mov r8, r0
- str r0, [sp, 0x4]
- adds r0, r4, 0
- movs r1, 0x2
- movs r3, 0
- bl sub_811A444
- add r5, sp, 0x14
- ldr r1, _08115998 @ =gUnknown_84571B4
- adds r0, r5, 0
- bl StringCopy
- ldr r0, [r6]
- adds r0, 0xA
- bl sub_8118658
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- add r0, sp, 0x8
- movs r2, 0x2
- movs r3, 0x5
- bl ConvertIntToDecimalStringN
- adds r0, r5, 0
- add r1, sp, 0x8
- bl StringAppend
- movs r0, 0x10
- str r0, [sp]
- mov r0, r8
- str r0, [sp, 0x4]
- adds r0, r4, 0
- movs r1, 0
- adds r2, r5, 0
- movs r3, 0
- bl sub_811A444
- add sp, 0x20
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08115994: .4byte gSaveBlock2Ptr
-_08115998: .4byte gUnknown_84571B4
- thumb_func_end sub_8115924
-
- thumb_func_start sub_811599C
-sub_811599C: @ 811599C
- push {lr}
- lsls r1, 24
- lsrs r1, 24
- subs r0, r1, 0x1
- cmp r0, 0x15
- bhi _08115A18
- lsls r0, 2
- ldr r1, _081159B4 @ =_081159B8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_081159B4: .4byte _081159B8
- .align 2, 0
-_081159B8:
- .4byte _08115A10
- .4byte _08115A10
- .4byte _08115A10
- .4byte _08115A10
- .4byte _08115A18
- .4byte _08115A18
- .4byte _08115A18
- .4byte _08115A18
- .4byte _08115A10
- .4byte _08115A10
- .4byte _08115A10
- .4byte _08115A18
- .4byte _08115A18
- .4byte _08115A18
- .4byte _08115A18
- .4byte _08115A18
- .4byte _08115A18
- .4byte _08115A18
- .4byte _08115A18
- .4byte _08115A18
- .4byte _08115A10
- .4byte _08115A10
-_08115A10:
- ldr r0, _08115A1C @ =gStringVar4
- ldr r1, _08115A20 @ =gUnknown_8457234
- bl StringExpandPlaceholders
-_08115A18:
- pop {r0}
- bx r0
- .align 2, 0
-_08115A1C: .4byte gStringVar4
-_08115A20: .4byte gUnknown_8457234
- thumb_func_end sub_811599C
-
- thumb_func_start TryBecomeLinkLeader
-TryBecomeLinkLeader: @ 8115A24
- push {lr}
- ldr r0, _08115A54 @ =sub_8115A68
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08115A58 @ =gUnknown_203B05C
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08115A5C @ =gTasks+0x8
- adds r1, r0
- str r1, [r2]
- ldr r0, _08115A60 @ =gUnknown_3002024
- str r1, [r0]
- movs r0, 0
- strb r0, [r1, 0xC]
- strb r0, [r1, 0xD]
- ldr r1, _08115A64 @ =gSpecialVar_Result
- strh r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08115A54: .4byte sub_8115A68
-_08115A58: .4byte gUnknown_203B05C
-_08115A5C: .4byte gTasks+0x8
-_08115A60: .4byte gUnknown_3002024
-_08115A64: .4byte gSpecialVar_Result
- thumb_func_end TryBecomeLinkLeader
-
- thumb_func_start sub_8115A68
-sub_8115A68: @ 8115A68
- push {r4-r7,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08115A88 @ =gUnknown_203B05C
- ldr r5, [r0]
- ldrb r0, [r5, 0xC]
- cmp r0, 0x1E
- bls _08115A7C
- b _081161D8
-_08115A7C:
- lsls r0, 2
- ldr r1, _08115A8C @ =_08115A90
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08115A88: .4byte gUnknown_203B05C
-_08115A8C: .4byte _08115A90
- .align 2, 0
-_08115A90:
- .4byte _08115B0C
- .4byte _081161D8
- .4byte _081161D8
- .4byte _08115B5C
- .4byte _08115C60
- .4byte _08115CE8
- .4byte _08115D04
- .4byte _08115E24
- .4byte _081161D8
- .4byte _08115D94
- .4byte _08115DAC
- .4byte _08115E40
- .4byte _08115EF4
- .4byte _0811600A
- .4byte _08116028
- .4byte _0811603A
- .4byte _08116058
- .4byte _08116112
- .4byte _08116128
- .4byte _081160A2
- .4byte _081160C0
- .4byte _08116168
- .4byte _08116194
- .4byte _08116168
- .4byte _0811617E
- .4byte _081161D8
- .4byte _081161AC
- .4byte _081161D8
- .4byte _081161D8
- .4byte _08115DEC
- .4byte _0811614C
-_08115B0C:
- ldr r3, _08115B4C @ =gUnknown_203B058
- ldr r2, _08115B50 @ =gUnknown_8456CD8
- ldr r1, _08115B54 @ =gSpecialVar_0x8004
- ldrh r0, [r1]
- lsls r0, 2
- adds r0, r2
- ldr r0, [r0]
- strb r0, [r3]
- ldr r4, _08115B58 @ =gUnknown_203B059
- ldrh r0, [r1]
- lsls r0, 2
- adds r0, r2
- ldr r0, [r0]
- lsrs r0, 8
- strb r0, [r4]
- ldrb r0, [r3]
- movs r1, 0
- movs r2, 0
- bl sub_80FAF58
- bl sub_800B1F4
- bl OpenLink
- ldrb r1, [r4]
- movs r0, 0xF
- ands r0, r1
- bl sub_80FBB8C
- movs r0, 0x3
- strb r0, [r5, 0xC]
- b _081161D8
- .align 2, 0
-_08115B4C: .4byte gUnknown_203B058
-_08115B50: .4byte gUnknown_8456CD8
-_08115B54: .4byte gSpecialVar_0x8004
-_08115B58: .4byte gUnknown_203B059
-_08115B5C:
- movs r0, 0x70
- bl AllocZeroed
- str r0, [r5, 0x4]
- movs r0, 0xA0
- bl AllocZeroed
- str r0, [r5]
- movs r0, 0xA0
- bl AllocZeroed
- str r0, [r5, 0x8]
- ldr r0, [r5, 0x4]
- movs r1, 0x4
- bl sub_811A650
- ldr r0, [r5]
- movs r1, 0x5
- bl sub_811A5E4
- ldr r0, [r5]
- adds r1, r0, 0
- adds r1, 0x10
- bl sub_80FCD50
- ldr r1, [r5]
- movs r3, 0
- movs r0, 0
- strh r0, [r1, 0x18]
- ldr r2, [r5]
- ldrb r1, [r2, 0x1A]
- subs r0, 0x4
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0x1A]
- ldr r2, [r5]
- ldrb r1, [r2, 0x1A]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x1A]
- ldr r0, [r5]
- strb r3, [r0, 0x1B]
- ldr r0, [r5, 0x4]
- movs r1, 0xFF
- bl sub_811A054
- strb r0, [r5, 0x17]
- ldr r0, _08115C48 @ =gUnknown_8456CD0
- bl AddWindow
- strb r0, [r5, 0x10]
- ldr r0, _08115C4C @ =gUnknown_8456CFC
- bl AddWindow
- strb r0, [r5, 0xF]
- ldr r0, _08115C50 @ =gUnknown_8456D04
- bl AddWindow
- strb r0, [r5, 0x11]
- ldrb r0, [r5, 0x10]
- movs r1, 0x22
- bl FillWindowPixelBuffer
- ldrb r0, [r5, 0x10]
- ldr r2, _08115C54 @ =gUnknown_845747C
- movs r1, 0x2
- str r1, [sp]
- movs r4, 0x4
- str r4, [sp, 0x4]
- movs r1, 0
- movs r3, 0x8
- bl sub_811A444
- ldrb r0, [r5, 0x10]
- bl PutWindowTilemap
- ldrb r0, [r5, 0x10]
- movs r1, 0x2
- bl CopyWindowToVram
- ldrb r0, [r5, 0xF]
- movs r1, 0
- bl DrawStdWindowFrame
- ldr r0, _08115C58 @ =gMultiuseListMenuTemplate
- adds r2, r0, 0
- ldr r1, _08115C5C @ =gUnknown_8456D34
- ldm r1!, {r3,r6,r7}
- stm r2!, {r3,r6,r7}
- ldm r1!, {r3,r6,r7}
- stm r2!, {r3,r6,r7}
- ldrb r1, [r5, 0xF]
- strb r1, [r0, 0x10]
- movs r1, 0
- movs r2, 0
- bl ListMenuInit
- strb r0, [r5, 0x12]
- ldrb r0, [r5, 0x11]
- movs r1, 0
- bl DrawStdWindowFrame
- ldrb r0, [r5, 0x11]
- bl PutWindowTilemap
- ldrb r0, [r5, 0x11]
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- movs r0, 0x1
- strb r0, [r5, 0x13]
- strb r4, [r5, 0xC]
- b _081161D8
- .align 2, 0
-_08115C48: .4byte gUnknown_8456CD0
-_08115C4C: .4byte gUnknown_8456CFC
-_08115C50: .4byte gUnknown_8456D04
-_08115C54: .4byte gUnknown_845747C
-_08115C58: .4byte gMultiuseListMenuTemplate
-_08115C5C: .4byte gUnknown_8456D34
-_08115C60:
- ldr r0, _08115C98 @ =gStringVar1
- ldr r2, _08115C9C @ =gUnknown_8456C74
- ldr r4, _08115CA0 @ =gUnknown_203B058
- ldrb r1, [r4]
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- bl StringCopy
- ldr r0, _08115CA4 @ =gUnknown_203B059
- ldrb r2, [r0]
- lsrs r0, r2, 4
- cmp r0, 0
- beq _08115CC4
- ldrb r1, [r5, 0x13]
- subs r0, 0x1
- cmp r1, r0
- ble _08115CB0
- movs r0, 0xF
- ands r0, r2
- cmp r0, 0
- beq _08115CB0
- ldr r0, _08115CA8 @ =gStringVar4
- ldr r1, _08115CAC @ =gUnknown_8457264
- bl StringExpandPlaceholders
- b _08115CCC
- .align 2, 0
-_08115C98: .4byte gStringVar1
-_08115C9C: .4byte gUnknown_8456C74
-_08115CA0: .4byte gUnknown_203B058
-_08115CA4: .4byte gUnknown_203B059
-_08115CA8: .4byte gStringVar4
-_08115CAC: .4byte gUnknown_8457264
-_08115CB0:
- ldr r0, _08115CBC @ =gStringVar4
- ldr r1, _08115CC0 @ =gUnknown_8457234
- bl StringExpandPlaceholders
- b _08115CCC
- .align 2, 0
-_08115CBC: .4byte gStringVar4
-_08115CC0: .4byte gUnknown_8457234
-_08115CC4:
- ldr r0, _08115CE0 @ =gStringVar4
- ldrb r1, [r4]
- bl sub_811599C
-_08115CCC:
- ldrb r0, [r5, 0x11]
- ldr r1, _08115CE4 @ =gUnknown_203B059
- ldrb r1, [r1]
- ldrb r2, [r5, 0x13]
- bl sub_811586C
- movs r0, 0x5
- strb r0, [r5, 0xC]
- b _081161D8
- .align 2, 0
-_08115CE0: .4byte gStringVar4
-_08115CE4: .4byte gUnknown_203B059
-_08115CE8:
- adds r0, r5, 0
- adds r0, 0xD
- ldr r1, _08115D00 @ =gStringVar4
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _08115CFA
- b _081161D8
-_08115CFA:
- movs r0, 0x6
- strb r0, [r5, 0xC]
- b _081161D8
- .align 2, 0
-_08115D00: .4byte gStringVar4
-_08115D04:
- adds r0, r5, 0
- movs r1, 0x7
- movs r2, 0xA
- bl sub_8116444
- ldr r0, _08115D24 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08115D40
- ldrb r0, [r5, 0x13]
- cmp r0, 0x1
- bne _08115D28
- movs r0, 0x17
- b _08115D3E
- .align 2, 0
-_08115D24: .4byte gMain
-_08115D28:
- ldr r0, _08115D38 @ =gUnknown_203B059
- ldrb r1, [r0]
- movs r0, 0xF0
- ands r0, r1
- cmp r0, 0
- beq _08115D3C
- movs r0, 0x1E
- b _08115D3E
- .align 2, 0
-_08115D38: .4byte gUnknown_203B059
-_08115D3C:
- movs r0, 0x13
-_08115D3E:
- strb r0, [r5, 0xC]
-_08115D40:
- ldr r0, _08115D8C @ =gUnknown_203B059
- ldrb r2, [r0]
- lsrs r0, r2, 4
- cmp r0, 0
- beq _08115D76
- ldrb r1, [r5, 0x13]
- subs r0, 0x1
- cmp r1, r0
- ble _08115D76
- movs r4, 0xF
- adds r0, r4, 0
- ands r0, r2
- cmp r0, 0
- beq _08115D76
- bl sub_80FC1CC
- cmp r0, 0
- beq _08115D76
- ldr r0, _08115D90 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08115D76
- strb r4, [r5, 0xC]
- bl sub_80F8F5C
-_08115D76:
- ldrb r0, [r5, 0xC]
- cmp r0, 0x6
- beq _08115D7E
- b _081161D8
-_08115D7E:
- bl sub_80FA5D4
- cmp r0, 0
- bne _08115D88
- b _081161D8
-_08115D88:
- b _08115EEE
- .align 2, 0
-_08115D8C: .4byte gUnknown_203B059
-_08115D90: .4byte gMain
-_08115D94:
- bl sub_80FA5D4
- cmp r0, 0
- beq _08115D9E
- b _081161D8
-_08115D9E:
- movs r0, 0x6
- strb r0, [r5, 0xC]
- ldr r0, [r5]
- bl sub_81165E8
- strb r0, [r5, 0x13]
- b _081161D8
-_08115DAC:
- movs r3, 0
- ldr r0, _08115DE4 @ =gUnknown_203B058
- ldrb r1, [r0]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x2
- bne _08115DBC
- movs r3, 0x1
-_08115DBC:
- adds r0, r5, 0
- adds r0, 0xD
- ldr r2, _08115DE8 @ =gUnknown_845767C
- lsls r1, r3, 2
- adds r1, r2
- ldr r1, [r1]
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _08115DD4
- b _081161D8
-_08115DD4:
- ldr r0, [r5]
- bl sub_81165E8
- strb r0, [r5, 0x13]
- ldrb r0, [r5, 0x12]
- bl RedrawListMenu
- b _0811610C
- .align 2, 0
-_08115DE4: .4byte gUnknown_203B058
-_08115DE8: .4byte gUnknown_845767C
-_08115DEC:
- ldr r0, _08115E1C @ =gUnknown_203B059
- ldrb r0, [r0]
- movs r1, 0xF
- ands r1, r0
- movs r0, 0x2
- eors r1, r0
- negs r0, r1
- orrs r0, r1
- lsrs r3, r0, 31
- adds r0, r5, 0
- adds r0, 0xD
- ldr r2, _08115E20 @ =gUnknown_845767C
- lsls r1, r3, 2
- adds r1, r2
- ldr r1, [r1]
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _08115E16
- b _081161D8
-_08115E16:
- movs r0, 0x15
- strb r0, [r5, 0xC]
- b _081161D8
- .align 2, 0
-_08115E1C: .4byte gUnknown_203B059
-_08115E20: .4byte gUnknown_845767C
-_08115E24:
- adds r0, r5, 0
- adds r0, 0xD
- ldr r1, _08115E3C @ =gStringVar4
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _08115E36
- b _081161D8
-_08115E36:
- movs r0, 0xB
- strb r0, [r5, 0xC]
- b _081161D8
- .align 2, 0
-_08115E3C: .4byte gStringVar4
-_08115E40:
- adds r4, r5, 0
- adds r4, 0xD
- ldrb r1, [r5, 0x13]
- lsls r1, 5
- ldr r0, [r5]
- adds r0, r1
- adds r0, 0x2
- bl sub_8118658
- lsls r0, 16
- lsrs r0, 16
- ldrb r2, [r5, 0x13]
- lsls r2, 5
- ldr r1, [r5]
- adds r1, r2
- adds r1, 0x10
- bl sub_80FA634
- adds r1, r0, 0
- adds r0, r4, 0
- bl sub_811A14C
- lsls r0, 24
- asrs r1, r0, 24
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _08115EC0
- cmp r1, r0
- bgt _08115E84
- subs r0, 0x2
- cmp r1, r0
- beq _08115EEE
- b _081161D8
-_08115E84:
- cmp r1, 0
- beq _08115E8E
- cmp r1, 0x1
- beq _08115EC0
- b _081161D8
-_08115E8E:
- bl LoadWirelessStatusIndicatorSpriteGfx
- movs r0, 0
- movs r1, 0
- bl CreateWirelessStatusIndicatorSprite
- movs r0, 0x5
- strb r0, [r5, 0x19]
- ldrb r1, [r5, 0x13]
- lsls r1, 5
- ldr r0, [r5]
- adds r0, r1
- adds r0, 0x2
- bl sub_8118658
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldrb r0, [r5, 0x13]
- lsls r0, 5
- ldr r2, [r5]
- adds r2, r0
- adds r2, 0x10
- movs r0, 0x5
- b _08115EE4
-_08115EC0:
- movs r0, 0x6
- strb r0, [r5, 0x19]
- ldrb r1, [r5, 0x13]
- lsls r1, 5
- ldr r0, [r5]
- adds r0, r1
- adds r0, 0x2
- bl sub_8118658
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldrb r0, [r5, 0x13]
- lsls r0, 5
- ldr r2, [r5]
- adds r2, r0
- adds r2, 0x10
- movs r0, 0x6
-_08115EE4:
- bl sub_80FA670
- movs r0, 0xC
- strb r0, [r5, 0xC]
- b _081161D8
-_08115EEE:
- movs r0, 0x9
- strb r0, [r5, 0xC]
- b _081161D8
-_08115EF4:
- ldrb r1, [r5, 0x13]
- lsls r1, 5
- ldr r0, [r5]
- adds r0, r1
- adds r0, 0x2
- bl sub_8118658
- lsls r0, 16
- lsrs r0, 16
- ldrb r2, [r5, 0x13]
- lsls r2, 5
- ldr r1, [r5]
- adds r1, r2
- adds r1, 0x10
- bl sub_80FA6FC
- cmp r0, 0x1
- bne _08115FFA
- ldrb r0, [r5, 0x19]
- cmp r0, 0x5
- bne _08115FB4
- ldr r1, [r5]
- ldrb r0, [r5, 0x13]
- lsls r0, 5
- adds r1, r0
- movs r0, 0
- strb r0, [r1, 0x1B]
- ldrb r0, [r5, 0x12]
- bl RedrawListMenu
- ldrb r0, [r5, 0x13]
- adds r0, 0x1
- strb r0, [r5, 0x13]
- ldr r1, _08115F58 @ =gUnknown_203B059
- ldrb r1, [r1]
- movs r3, 0xF
- lsls r0, 24
- lsrs r2, r0, 24
- adds r0, r3, 0
- ands r0, r1
- cmp r2, r0
- bne _08115FF0
- movs r0, 0xF0
- ands r0, r1
- cmp r0, 0
- bne _08115F54
- cmp r2, 0x4
- bne _08115F5C
-_08115F54:
- strb r3, [r5, 0xC]
- b _08115F90
- .align 2, 0
-_08115F58: .4byte gUnknown_203B059
-_08115F5C:
- ldr r4, _08115FA4 @ =gStringVar1
- ldrb r1, [r5, 0x13]
- lsls r1, 5
- ldr r0, [r5]
- adds r1, r0
- subs r1, 0x10
- adds r0, r4, 0
- bl StringCopy7
- ldr r1, [r5]
- ldrb r0, [r5, 0x13]
- subs r0, 0x1
- lsls r0, 5
- adds r1, r0
- ldrb r1, [r1]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- ldr r0, _08115FA8 @ =gStringVar4
- ldr r1, _08115FAC @ =gUnknown_8457554
- bl StringExpandPlaceholders
- movs r0, 0xD
- strb r0, [r5, 0xC]
-_08115F90:
- bl sub_80F8F5C
- ldrb r0, [r5, 0x11]
- ldr r1, _08115FB0 @ =gUnknown_203B059
- ldrb r1, [r1]
- ldrb r2, [r5, 0x13]
- bl sub_811586C
- b _08115FF4
- .align 2, 0
-_08115FA4: .4byte gStringVar1
-_08115FA8: .4byte gStringVar4
-_08115FAC: .4byte gUnknown_8457554
-_08115FB0: .4byte gUnknown_203B059
-_08115FB4:
- ldrb r1, [r5, 0x13]
- lsls r1, 5
- ldr r0, [r5]
- adds r0, r1
- adds r4, r0, 0
- adds r4, 0x10
- adds r0, 0x2
- bl sub_8118658
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl sub_80FBD4C
- ldr r1, [r5]
- ldrb r0, [r5, 0x13]
- lsls r0, 5
- adds r1, r0
- ldrb r2, [r1, 0x1A]
- movs r0, 0x4
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x1A]
- ldr r0, [r5]
- bl sub_81165E8
- ldrb r0, [r5, 0x12]
- bl RedrawListMenu
-_08115FF0:
- movs r0, 0x4
- strb r0, [r5, 0xC]
-_08115FF4:
- movs r0, 0
- strb r0, [r5, 0x19]
- b _081161D8
-_08115FFA:
- cmp r0, 0x2
- beq _08116000
- b _081161D8
-_08116000:
- movs r0, 0
- movs r1, 0
- bl sub_80FB9E4
- b _0811610C
-_0811600A:
- adds r0, r5, 0
- adds r0, 0xD
- ldr r1, _08116024 @ =gStringVar4
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _0811601C
- b _081161D8
-_0811601C:
- movs r0, 0xE
- strb r0, [r5, 0xC]
- b _081161D8
- .align 2, 0
-_08116024: .4byte gStringVar4
-_08116028:
- ldrb r0, [r5, 0xE]
- adds r0, 0x1
- strb r0, [r5, 0xE]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x78
- bhi _08116038
- b _081161D8
-_08116038:
- b _0811607E
-_0811603A:
- adds r0, r5, 0
- adds r0, 0xD
- ldr r1, _08116054 @ =gUnknown_8457514
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _0811604C
- b _081161D8
-_0811604C:
- movs r0, 0x10
- strb r0, [r5, 0xC]
- b _081161D8
- .align 2, 0
-_08116054: .4byte gUnknown_8457514
-_08116058:
- adds r0, r5, 0
- adds r0, 0xD
- movs r1, 0
- bl sub_811A14C
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _0811607E
- cmp r1, 0
- bgt _08116078
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _08116084
- b _081161D8
-_08116078:
- cmp r1, 0x1
- beq _08116084
- b _081161D8
-_0811607E:
- movs r0, 0x11
- strb r0, [r5, 0xC]
- b _081161D8
-_08116084:
- ldr r0, _08116098 @ =gUnknown_203B059
- ldrb r1, [r0]
- movs r0, 0xF0
- ands r0, r1
- cmp r0, 0
- beq _0811609C
- movs r0, 0x1E
- strb r0, [r5, 0xC]
- b _081161D8
- .align 2, 0
-_08116098: .4byte gUnknown_203B059
-_0811609C:
- movs r0, 0x13
- strb r0, [r5, 0xC]
- b _081161D8
-_081160A2:
- adds r0, r5, 0
- adds r0, 0xD
- ldr r1, _081160BC @ =gUnknown_8457530
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _081160B4
- b _081161D8
-_081160B4:
- movs r0, 0x14
- strb r0, [r5, 0xC]
- b _081161D8
- .align 2, 0
-_081160BC: .4byte gUnknown_8457530
-_081160C0:
- adds r0, r5, 0
- adds r0, 0xD
- movs r1, 0
- bl sub_811A14C
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _0811615C
- cmp r1, 0
- bgt _081160E0
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _081160E4
- b _081161D8
-_081160E0:
- cmp r1, 0x1
- bne _081161D8
-_081160E4:
- ldr r0, _081160F8 @ =gUnknown_203B059
- ldrb r2, [r0]
- movs r0, 0xF0
- ands r0, r2
- cmp r0, 0
- beq _081160FC
- movs r0, 0xF
- strb r0, [r5, 0xC]
- b _081161D8
- .align 2, 0
-_081160F8: .4byte gUnknown_203B059
-_081160FC:
- movs r3, 0xF
- ldrb r1, [r5, 0x13]
- adds r0, r3, 0
- ands r0, r2
- cmp r1, r0
- bne _0811610C
- strb r3, [r5, 0xC]
- b _081161D8
-_0811610C:
- movs r0, 0x4
- strb r0, [r5, 0xC]
- b _081161D8
-_08116112:
- adds r0, r5, 0
- movs r1, 0x7
- movs r2, 0x17
- bl sub_8116444
- lsls r0, 24
- cmp r0, 0
- bne _081161D8
- movs r0, 0x12
- strb r0, [r5, 0xC]
- b _081161D8
-_08116128:
- bl sub_80F8F40
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _08116144
- movs r0, 0
- bl sub_80F8F7C
- cmp r0, 0
- beq _081161D8
- movs r0, 0x1A
- strb r0, [r5, 0xC]
- b _081161D8
-_08116144:
- movs r0, 0x1D
- strb r0, [r5, 0xC]
- strb r1, [r5, 0xD]
- b _081161D8
-_0811614C:
- adds r0, r5, 0
- adds r0, 0xD
- ldr r1, _08116164 @ =gUnknown_8457610
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- beq _081161D8
-_0811615C:
- movs r0, 0x17
- strb r0, [r5, 0xC]
- b _081161D8
- .align 2, 0
-_08116164: .4byte gUnknown_8457610
-_08116168:
- bl DestroyWirelessStatusIndicatorSprite
- bl sub_80F8DC0
- adds r0, r5, 0
- bl sub_81161E4
- ldrb r0, [r5, 0xC]
- adds r0, 0x1
- strb r0, [r5, 0xC]
- b _081161D8
-_0811617E:
- bl EnableBothScriptContexts
- adds r0, r4, 0
- bl DestroyTask
- ldr r1, _08116190 @ =gSpecialVar_Result
- movs r0, 0x5
- strh r0, [r1]
- b _081161D8
- .align 2, 0
-_08116190: .4byte gSpecialVar_Result
-_08116194:
- bl EnableBothScriptContexts
- adds r0, r4, 0
- bl DestroyTask
- ldr r1, _081161A8 @ =gSpecialVar_Result
- movs r0, 0x8
- strh r0, [r1]
- b _081161D8
- .align 2, 0
-_081161A8: .4byte gSpecialVar_Result
-_081161AC:
- bl sub_80FBA00
- cmp r0, 0
- beq _081161BA
- movs r0, 0x1D
- strb r0, [r5, 0xC]
- b _081161D8
-_081161BA:
- ldr r0, _081161E0 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- beq _081161D8
- movs r0, 0x1
- bl sub_80FAFE0
- bl sub_8117990
- adds r0, r5, 0
- bl sub_81161E4
- adds r0, r4, 0
- bl DestroyTask
-_081161D8:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081161E0: .4byte gReceivedRemoteLinkPlayers
- thumb_func_end sub_8115A68
-
- thumb_func_start sub_81161E4
-sub_81161E4: @ 81161E4
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4, 0x11]
- bl ClearWindowTilemap
- ldrb r0, [r4, 0x11]
- movs r1, 0
- bl ClearStdWindowAndFrame
- ldrb r0, [r4, 0x12]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- ldrb r0, [r4, 0x10]
- bl ClearWindowTilemap
- ldrb r0, [r4, 0xF]
- movs r1, 0
- bl ClearStdWindowAndFrame
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- ldrb r0, [r4, 0x11]
- bl RemoveWindow
- ldrb r0, [r4, 0xF]
- bl RemoveWindow
- ldrb r0, [r4, 0x10]
- bl RemoveWindow
- ldrb r0, [r4, 0x17]
- bl DestroyTask
- ldr r0, [r4, 0x8]
- bl Free
- ldr r0, [r4]
- bl Free
- ldr r0, [r4, 0x4]
- bl Free
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81161E4
-
- thumb_func_start sub_8116244
-sub_8116244: @ 8116244
- push {lr}
- adds r2, r0, 0
- lsls r1, 24
- lsrs r1, 24
- subs r0, r1, 0x1
- cmp r0, 0x15
- bhi _081162D8
- lsls r0, 2
- ldr r1, _0811625C @ =_08116260
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0811625C: .4byte _08116260
- .align 2, 0
-_08116260:
- .4byte _081162B8
- .4byte _081162B8
- .4byte _081162D0
- .4byte _081162B8
- .4byte _081162D8
- .4byte _081162D8
- .4byte _081162D8
- .4byte _081162D8
- .4byte _081162D0
- .4byte _081162D0
- .4byte _081162D0
- .4byte _081162D8
- .4byte _081162D8
- .4byte _081162D8
- .4byte _081162D8
- .4byte _081162D8
- .4byte _081162D8
- .4byte _081162D8
- .4byte _081162D8
- .4byte _081162D8
- .4byte _081162C0
- .4byte _081162C0
-_081162B8:
- ldr r1, _081162BC @ =gUnknown_84574A0
- b _081162C2
- .align 2, 0
-_081162BC: .4byte gUnknown_84574A0
-_081162C0:
- ldr r1, _081162CC @ =gUnknown_84574C4
-_081162C2:
- adds r0, r2, 0
- bl StringExpandPlaceholders
- b _081162D8
- .align 2, 0
-_081162CC: .4byte gUnknown_84574C4
-_081162D0:
- ldr r1, _081162DC @ =gUnknown_84574EC
- adds r0, r2, 0
- bl StringExpandPlaceholders
-_081162D8:
- pop {r0}
- bx r0
- .align 2, 0
-_081162DC: .4byte gUnknown_84574EC
- thumb_func_end sub_8116244
-
- thumb_func_start sub_81162E0
-sub_81162E0: @ 81162E0
- push {lr}
- lsls r1, 24
- lsrs r1, 24
- adds r2, r1, 0
- cmp r1, 0x44
- beq _08116300
- cmp r1, 0x44
- bgt _081162F6
- cmp r1, 0x41
- beq _08116300
- b _08116312
-_081162F6:
- cmp r2, 0x45
- beq _0811630C
- cmp r2, 0x48
- beq _0811630C
- b _08116312
-_08116300:
- ldr r1, _08116308 @ =gUnknown_8457E28
- bl StringExpandPlaceholders
- b _08116312
- .align 2, 0
-_08116308: .4byte gUnknown_8457E28
-_0811630C:
- ldr r1, _08116318 @ =gUnknown_8457E44
- bl StringExpandPlaceholders
-_08116312:
- pop {r0}
- bx r0
- .align 2, 0
-_08116318: .4byte gUnknown_8457E44
- thumb_func_end sub_81162E0
-
- thumb_func_start sub_811631C
-sub_811631C: @ 811631C
- push {lr}
- adds r2, r0, 0
- lsls r1, 24
- lsrs r1, 24
- subs r0, r1, 0x1
- cmp r0, 0x15
- bhi _081163A8
- lsls r0, 2
- ldr r1, _08116334 @ =_08116338
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08116334: .4byte _08116338
- .align 2, 0
-_08116338:
- .4byte _08116390
- .4byte _08116390
- .4byte _081163A0
- .4byte _08116390
- .4byte _081163A8
- .4byte _081163A8
- .4byte _081163A8
- .4byte _081163A8
- .4byte _081163A0
- .4byte _081163A0
- .4byte _081163A0
- .4byte _081163A8
- .4byte _081163A8
- .4byte _081163A8
- .4byte _081163A8
- .4byte _081163A8
- .4byte _081163A8
- .4byte _081163A8
- .4byte _081163A8
- .4byte _081163A8
- .4byte _08116390
- .4byte _08116390
-_08116390:
- ldr r1, _0811639C @ =gUnknown_8459238
- adds r0, r2, 0
- bl StringExpandPlaceholders
- b _081163A8
- .align 2, 0
-_0811639C: .4byte gUnknown_8459238
-_081163A0:
- ldr r1, _081163AC @ =gUnknown_8459250
- adds r0, r2, 0
- bl StringExpandPlaceholders
-_081163A8:
- pop {r0}
- bx r0
- .align 2, 0
-_081163AC: .4byte gUnknown_8459250
- thumb_func_end sub_811631C
-
- thumb_func_start sub_81163B0
-sub_81163B0: @ 81163B0
- push {lr}
- adds r2, r0, 0
- lsls r1, 24
- lsrs r1, 24
- subs r0, r1, 0x1
- cmp r0, 0x15
- bhi _0811643C
- lsls r0, 2
- ldr r1, _081163C8 @ =_081163CC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_081163C8: .4byte _081163CC
- .align 2, 0
-_081163CC:
- .4byte _08116424
- .4byte _08116424
- .4byte _08116434
- .4byte _08116424
- .4byte _0811643C
- .4byte _0811643C
- .4byte _0811643C
- .4byte _0811643C
- .4byte _08116434
- .4byte _08116434
- .4byte _08116434
- .4byte _0811643C
- .4byte _0811643C
- .4byte _0811643C
- .4byte _0811643C
- .4byte _0811643C
- .4byte _0811643C
- .4byte _0811643C
- .4byte _0811643C
- .4byte _0811643C
- .4byte _08116424
- .4byte _08116424
-_08116424:
- ldr r1, _08116430 @ =gUnknown_84576AC
- adds r0, r2, 0
- bl StringExpandPlaceholders
- b _0811643C
- .align 2, 0
-_08116430: .4byte gUnknown_84576AC
-_08116434:
- ldr r1, _08116440 @ =gUnknown_84576C4
- adds r0, r2, 0
- bl StringExpandPlaceholders
-_0811643C:
- pop {r0}
- bx r0
- .align 2, 0
-_08116440: .4byte gUnknown_84576C4
- thumb_func_end sub_81163B0
-
- thumb_func_start sub_8116444
-sub_8116444: @ 8116444
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r6, r1, 0
- adds r4, r2, 0
- ldr r0, [r5]
- bl sub_8116524
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08116460
- cmp r0, 0x2
- beq _081164AC
- b _081164C0
-_08116460:
- movs r0, 0x2
- bl PlaySE
- ldrb r0, [r5, 0x12]
- bl RedrawListMenu
- ldr r4, _081164A0 @ =gStringVar2
- ldrb r0, [r5, 0x13]
- lsls r0, 5
- ldr r1, [r5]
- adds r1, r0
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy7
- ldr r1, [r5]
- ldrb r0, [r5, 0x13]
- lsls r0, 5
- adds r1, r0
- ldrb r1, [r1]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- ldr r0, _081164A4 @ =gStringVar4
- ldr r1, _081164A8 @ =gUnknown_203B058
- ldrb r1, [r1]
- bl sub_8116244
- strb r6, [r5, 0xC]
- b _081164C0
- .align 2, 0
-_081164A0: .4byte gStringVar2
-_081164A4: .4byte gStringVar4
-_081164A8: .4byte gUnknown_203B058
-_081164AC:
- movs r0, 0
- movs r1, 0
- bl sub_80FB9E4
- ldrb r0, [r5, 0x12]
- bl RedrawListMenu
- strb r4, [r5, 0xC]
- movs r0, 0x1
- b _081164C2
-_081164C0:
- movs r0, 0
-_081164C2:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8116444
-
- thumb_func_start sub_81164C8
-sub_81164C8: @ 81164C8
- push {r4-r6,lr}
- sub sp, 0x8
- adds r4, r1, 0
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r2, 24
- lsrs r6, r2, 24
- ldr r0, _081164F4 @ =gUnknown_203B05C
- ldr r3, [r0]
- movs r2, 0
- ldr r1, [r3]
- lsls r0, r4, 5
- adds r1, r0
- ldrb r0, [r1, 0x1A]
- lsls r0, 30
- lsrs r0, 30
- cmp r0, 0x1
- beq _081164F8
- cmp r0, 0x2
- beq _08116502
- b _08116504
- .align 2, 0
-_081164F4: .4byte gUnknown_203B05C
-_081164F8:
- ldrb r0, [r1, 0x1B]
- cmp r0, 0
- beq _08116504
- movs r2, 0x2
- b _08116504
-_08116502:
- movs r2, 0x1
-_08116504:
- lsls r0, r4, 5
- ldr r3, [r3]
- adds r3, r0
- str r2, [sp]
- lsls r0, r4, 24
- lsrs r0, 24
- str r0, [sp, 0x4]
- adds r0, r5, 0
- movs r1, 0
- adds r2, r6, 0
- bl sub_811A910
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_81164C8
-
- thumb_func_start sub_8116524
-sub_8116524: @ 8116524
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- ldr r0, _0811657C @ =gUnknown_203B05C
- ldr r5, [r0]
- movs r0, 0
- mov r8, r0
- movs r3, 0x1
-_08116538:
- ldr r0, [r5]
- lsls r6, r3, 5
- adds r2, r0, r6
- ldrb r0, [r2, 0x1A]
- lsls r0, 30
- lsrs r0, 30
- mov r9, r0
- cmp r0, 0x1
- bne _08116598
- ldr r1, [r5, 0x4]
- adds r0, r2, 0
- str r3, [sp]
- bl sub_811A748
- adds r4, r0, 0
- ldr r3, [sp]
- cmp r4, 0xFF
- beq _08116580
- ldr r1, [r5]
- ldr r0, [r5, 0x4]
- lsls r2, r4, 3
- subs r2, r4
- lsls r2, 2
- adds r1, r6
- adds r0, r2
- ldm r0!, {r2,r4,r7}
- stm r1!, {r2,r4,r7}
- ldm r0!, {r2,r4,r7}
- stm r1!, {r2,r4,r7}
- ldr r0, [r5]
- adds r0, r6
- mov r1, r9
- strh r1, [r0, 0x18]
- b _08116598
- .align 2, 0
-_0811657C: .4byte gUnknown_203B05C
-_08116580:
- ldr r2, [r5]
- adds r2, r6
- ldrb r1, [r2, 0x1A]
- movs r4, 0x4
- negs r4, r4
- adds r0, r4, 0
- ands r1, r0
- movs r0, 0x2
- orrs r1, r0
- strb r1, [r2, 0x1A]
- movs r7, 0x2
- mov r8, r7
-_08116598:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x4
- bls _08116538
- movs r6, 0
- movs r4, 0x3
-_081165A6:
- ldr r0, [r5]
- ldr r1, [r5, 0x4]
- adds r1, r6
- movs r2, 0x5
- bl sub_811A798
- adds r6, 0x1C
- subs r4, 0x1
- ldr r0, [r5]
- cmp r4, 0
- bge _081165A6
- mov r1, r8
- cmp r1, 0x2
- beq _081165D8
- adds r1, r0, 0
- movs r4, 0x4
-_081165C6:
- ldrb r0, [r1, 0x1B]
- cmp r0, 0
- beq _081165D0
- movs r2, 0x1
- mov r8, r2
-_081165D0:
- adds r1, 0x20
- subs r4, 0x1
- cmp r4, 0
- bge _081165C6
-_081165D8:
- mov r0, r8
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8116524
-
- thumb_func_start sub_81165E8
-sub_81165E8: @ 81165E8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, _081166BC @ =gUnknown_203B05C
- ldr r4, [r0]
- movs r3, 0
-_081165F8:
- ldr r0, [r4, 0x8]
- lsls r2, r3, 5
- ldr r1, [r4]
- adds r0, r2
- adds r1, r2
- ldm r1!, {r2,r5,r6}
- stm r0!, {r2,r5,r6}
- ldm r1!, {r2,r5,r7}
- stm r0!, {r2,r5,r7}
- ldm r1!, {r6,r7}
- stm r0!, {r6,r7}
- adds r3, 0x1
- ldr r0, [r4, 0x8]
- ldr r1, [r4]
- cmp r3, 0x4
- ble _081165F8
- movs r5, 0
- mov r8, r1
- mov r9, r0
- movs r3, 0x4
-_08116620:
- mov r1, r9
- ldrb r0, [r1, 0x1A]
- lsls r0, 30
- lsrs r0, 30
- cmp r0, 0x1
- bne _08116642
- lsls r0, r5, 5
- add r0, r8
- ldm r1!, {r2,r6,r7}
- stm r0!, {r2,r6,r7}
- ldm r1!, {r2,r6,r7}
- stm r0!, {r2,r6,r7}
- ldm r1!, {r2,r6}
- stm r0!, {r2,r6}
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
-_08116642:
- movs r7, 0x20
- add r9, r7
- subs r3, 0x1
- cmp r3, 0
- bge _08116620
- mov r10, r5
- cmp r5, 0x4
- bhi _081166A4
- ldr r0, _081166C0 @ =gUnknown_8457034
- mov r9, r0
- movs r1, 0
- mov r12, r1
- movs r2, 0x4
- negs r2, r2
- mov r8, r2
-_08116660:
- ldr r1, [r4]
- lsls r3, r5, 5
- adds r1, r3
- mov r0, r9
- ldm r0!, {r2,r6,r7}
- stm r1!, {r2,r6,r7}
- ldm r0!, {r2,r6,r7}
- stm r1!, {r2,r6,r7}
- ldr r0, [r4]
- adds r0, r3
- movs r1, 0
- strh r1, [r0, 0x18]
- ldr r1, [r4]
- adds r1, r3
- ldrb r2, [r1, 0x1A]
- mov r0, r8
- ands r0, r2
- strb r0, [r1, 0x1A]
- ldr r1, [r4]
- adds r1, r3
- ldrb r2, [r1, 0x1A]
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x1A]
- ldr r0, [r4]
- adds r0, r3
- mov r6, r12
- strb r6, [r0, 0x1B]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x4
- bls _08116660
-_081166A4:
- movs r3, 0
- ldr r1, [r4]
- ldrb r0, [r1, 0x1A]
- lsls r0, 30
- lsrs r0, 30
- cmp r0, 0x1
- bne _081166C4
- ldrb r0, [r1, 0x1B]
- cmp r0, 0x40
- bne _081166C4
- mov r10, r3
- b _081166E4
- .align 2, 0
-_081166BC: .4byte gUnknown_203B05C
-_081166C0: .4byte gUnknown_8457034
-_081166C4:
- adds r3, 0x1
- cmp r3, 0x4
- bgt _081166E4
- lsls r0, r3, 5
- adds r2, r1, r0
- ldrb r0, [r2, 0x1A]
- lsls r0, 30
- lsrs r0, 30
- cmp r0, 0x1
- bne _081166C4
- ldrb r0, [r2, 0x1B]
- cmp r0, 0x40
- bne _081166C4
- lsls r0, r3, 24
- lsrs r0, 24
- mov r10, r0
-_081166E4:
- mov r0, r10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_81165E8
-
- thumb_func_start TryJoinLinkGroup
-TryJoinLinkGroup: @ 81166F4
- push {lr}
- ldr r0, _08116724 @ =sub_8116738
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08116728 @ =gUnknown_203B05C
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _0811672C @ =gTasks+0x8
- adds r1, r0
- str r1, [r2]
- ldr r0, _08116730 @ =gUnknown_3002028
- str r1, [r0]
- movs r0, 0
- strb r0, [r1, 0x8]
- strb r0, [r1, 0x9]
- ldr r1, _08116734 @ =gSpecialVar_Result
- strh r0, [r1]
- pop {r0}
- bx r0
- .align 2, 0
-_08116724: .4byte sub_8116738
-_08116728: .4byte gUnknown_203B05C
-_0811672C: .4byte gTasks+0x8
-_08116730: .4byte gUnknown_3002028
-_08116734: .4byte gSpecialVar_Result
- thumb_func_end TryJoinLinkGroup
-
- thumb_func_start sub_8116738
-sub_8116738: @ 8116738
- push {r4-r7,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08116758 @ =gUnknown_203B05C
- ldr r6, [r0]
- ldrb r0, [r6, 0x8]
- cmp r0, 0x17
- bls _0811674C
- b _08116D06
-_0811674C:
- lsls r0, 2
- ldr r1, _0811675C @ =_08116760
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08116758: .4byte gUnknown_203B05C
-_0811675C: .4byte _08116760
- .align 2, 0
-_08116760:
- .4byte _081167C0
- .4byte _0811680C
- .4byte _08116838
- .4byte _08116904
- .4byte _08116D06
- .4byte _081169B4
- .4byte _08116A08
- .4byte _08116B94
- .4byte _08116BB0
- .4byte _08116BFE
- .4byte _08116C10
- .4byte _08116C98
- .4byte _08116C10
- .4byte _08116C68
- .4byte _08116C10
- .4byte _08116CA8
- .4byte _08116D06
- .4byte _08116D06
- .4byte _08116C10
- .4byte _08116CC8
- .4byte _08116C10
- .4byte _08116CFC
- .4byte _08116D06
- .4byte _08116CEC
-_081167C0:
- ldr r5, _08116800 @ =gUnknown_84570C8
- ldr r4, _08116804 @ =gSpecialVar_0x8004
- ldrh r0, [r4]
- adds r0, r5
- ldrb r0, [r0]
- movs r1, 0
- movs r2, 0
- bl sub_80FAF58
- ldr r1, _08116808 @ =gUnknown_203B058
- ldrh r0, [r4]
- adds r0, r5
- ldrb r0, [r0]
- strb r0, [r1]
- bl sub_800B1F4
- bl OpenLink
- bl sub_80FBBD8
- movs r0, 0x70
- bl AllocZeroed
- str r0, [r6, 0x4]
- movs r0, 0x80
- lsls r0, 2
- bl AllocZeroed
- str r0, [r6]
- movs r0, 0x1
- strb r0, [r6, 0x8]
- b _08116D06
- .align 2, 0
-_08116800: .4byte gUnknown_84570C8
-_08116804: .4byte gSpecialVar_0x8004
-_08116808: .4byte gUnknown_203B058
-_0811680C:
- adds r0, r6, 0
- adds r0, 0x9
- ldr r2, _08116830 @ =gUnknown_84591B8
- ldr r1, _08116834 @ =gSpecialVar_0x8004
- ldrh r1, [r1]
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _08116828
- b _08116D06
-_08116828:
- movs r0, 0x2
- strb r0, [r6, 0x8]
- b _08116D06
- .align 2, 0
-_08116830: .4byte gUnknown_84591B8
-_08116834: .4byte gSpecialVar_0x8004
-_08116838:
- ldr r0, [r6, 0x4]
- movs r1, 0x4
- bl sub_811A650
- ldr r0, [r6]
- movs r1, 0x10
- bl sub_811A5E4
- ldr r0, [r6, 0x4]
- ldr r1, _081168E8 @ =gSpecialVar_0x8004
- ldrh r1, [r1]
- bl sub_811A054
- movs r4, 0
- strb r0, [r6, 0x11]
- ldr r0, _081168EC @ =gUnknown_8456CD0
- bl AddWindow
- strb r0, [r6, 0xC]
- ldr r0, _081168F0 @ =gUnknown_8456D4C
- bl AddWindow
- strb r0, [r6, 0xB]
- ldr r0, _081168F4 @ =gUnknown_8456D54
- bl AddWindow
- strb r0, [r6, 0xD]
- ldrb r0, [r6, 0xC]
- movs r1, 0x22
- bl FillWindowPixelBuffer
- ldrb r0, [r6, 0xC]
- ldr r2, _081168F8 @ =gUnknown_8458FC8
- movs r1, 0x2
- str r1, [sp]
- movs r1, 0x4
- str r1, [sp, 0x4]
- movs r1, 0
- movs r3, 0x8
- bl sub_811A444
- ldrb r0, [r6, 0xC]
- bl PutWindowTilemap
- ldrb r0, [r6, 0xC]
- movs r1, 0x2
- bl CopyWindowToVram
- ldrb r0, [r6, 0xB]
- movs r1, 0
- bl DrawStdWindowFrame
- ldr r0, _081168FC @ =gMultiuseListMenuTemplate
- adds r2, r0, 0
- ldr r1, _08116900 @ =gUnknown_8456DDC
- ldm r1!, {r3,r5,r7}
- stm r2!, {r3,r5,r7}
- ldm r1!, {r3,r5,r7}
- stm r2!, {r3,r5,r7}
- ldrb r1, [r6, 0xB]
- strb r1, [r0, 0x10]
- movs r1, 0
- movs r2, 0
- bl ListMenuInit
- strb r0, [r6, 0xE]
- ldrb r0, [r6, 0xD]
- movs r1, 0
- bl DrawStdWindowFrame
- ldrb r0, [r6, 0xD]
- bl PutWindowTilemap
- ldrb r0, [r6, 0xD]
- bl sub_8115924
- ldrb r0, [r6, 0xD]
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- strb r4, [r6, 0xF]
- movs r0, 0x3
- strb r0, [r6, 0x8]
- b _08116D06
- .align 2, 0
-_081168E8: .4byte gSpecialVar_0x8004
-_081168EC: .4byte gUnknown_8456CD0
-_081168F0: .4byte gUnknown_8456D4C
-_081168F4: .4byte gUnknown_8456D54
-_081168F8: .4byte gUnknown_8458FC8
-_081168FC: .4byte gMultiuseListMenuTemplate
-_08116900: .4byte gUnknown_8456DDC
-_08116904:
- bl sub_8116FE4
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _0811691E
- cmp r4, 0x1
- beq _08116916
- b _08116BF6
-_08116916:
- movs r0, 0x2
- bl PlaySE
- b _08116BF6
-_0811691E:
- ldrb r0, [r6, 0xE]
- bl ListMenu_ProcessInput
- adds r4, r0, 0
- ldr r0, _0811696C @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0811699C
- movs r0, 0x1
- negs r0, r0
- cmp r4, r0
- beq _0811699C
- ldr r0, [r6]
- lsls r1, r4, 5
- adds r0, r1
- ldrb r1, [r0, 0xA]
- ldrb r0, [r0, 0x1A]
- lsls r0, 30
- lsrs r0, 30
- cmp r0, 0x1
- bne _08116994
- lsrs r0, r1, 7
- cmp r0, 0
- bne _08116994
- adds r0, r6, 0
- adds r1, r4, 0
- bl sub_8116D10
- adds r1, r0, 0
- cmp r1, 0
- bne _08116970
- adds r0, r6, 0
- adds r1, r4, 0
- bl sub_8116D60
- movs r0, 0x5
- b _08116982
- .align 2, 0
-_0811696C: .4byte gMain
-_08116970:
- ldr r0, _0811698C @ =gStringVar4
- ldr r2, _08116990 @ =gUnknown_8457608
- subs r1, 0x1
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- bl StringCopy
- movs r0, 0x12
-_08116982:
- strb r0, [r6, 0x8]
- movs r0, 0x67
- bl PlaySE
- b _08116D06
- .align 2, 0
-_0811698C: .4byte gStringVar4
-_08116990: .4byte gUnknown_8457608
-_08116994:
- movs r0, 0x7
- bl PlaySE
- b _08116D06
-_0811699C:
- ldr r0, _081169B0 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _081169AA
- b _08116D06
-_081169AA:
- movs r0, 0xA
- strb r0, [r6, 0x8]
- b _08116D06
- .align 2, 0
-_081169B0: .4byte gMain
-_081169B4:
- ldr r4, _081169FC @ =gStringVar4
- ldr r0, _08116A00 @ =gUnknown_203B058
- ldrb r1, [r0]
- adds r0, r4, 0
- bl sub_811631C
- adds r0, r6, 0
- adds r0, 0x9
- adds r1, r4, 0
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _081169D2
- b _08116D06
-_081169D2:
- ldr r4, _08116A04 @ =gStringVar1
- ldrb r0, [r6, 0xF]
- lsls r0, 5
- ldr r1, [r6]
- adds r1, r0
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy7
- ldr r1, [r6]
- ldrb r0, [r6, 0xF]
- lsls r0, 5
- adds r1, r0
- ldrb r1, [r1]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- b _08116C0A
- .align 2, 0
-_081169FC: .4byte gStringVar4
-_08116A00: .4byte gUnknown_203B058
-_08116A04: .4byte gStringVar1
-_08116A08:
- ldr r0, _08116A3C @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- beq _08116AA4
- ldr r4, _08116A40 @ =gUnknown_203B058
- ldr r1, [r6]
- ldrb r0, [r6, 0xF]
- lsls r0, 5
- adds r1, r0
- ldrb r0, [r1, 0xA]
- lsls r0, 25
- lsrs r0, 25
- strb r0, [r4]
- movs r0, 0
- movs r1, 0
- bl sub_80FB9E4
- ldrb r0, [r4]
- subs r0, 0x1
- cmp r0, 0x15
- bhi _08116AA4
- lsls r0, 2
- ldr r1, _08116A44 @ =_08116A48
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08116A3C: .4byte gReceivedRemoteLinkPlayers
-_08116A40: .4byte gUnknown_203B058
-_08116A44: .4byte _08116A48
- .align 2, 0
-_08116A48:
- .4byte _08116AA0
- .4byte _08116AA0
- .4byte _08116AA0
- .4byte _08116AA0
- .4byte _08116AA0
- .4byte _08116AA4
- .4byte _08116AA4
- .4byte _08116AA4
- .4byte _08116AA0
- .4byte _08116AA0
- .4byte _08116AA0
- .4byte _08116AA4
- .4byte _08116AA0
- .4byte _08116AA0
- .4byte _08116AA4
- .4byte _08116AA4
- .4byte _08116AA4
- .4byte _08116AA4
- .4byte _08116AA4
- .4byte _08116AA4
- .4byte _08116AA0
- .4byte _08116AA0
-_08116AA0:
- movs r0, 0x14
- strb r0, [r6, 0x8]
-_08116AA4:
- bl sub_80FB9F4
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x1
- cmp r0, 0x8
- bhi _08116B70
- lsls r0, 2
- ldr r1, _08116ABC @ =_08116AC0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08116ABC: .4byte _08116AC0
- .align 2, 0
-_08116AC0:
- .4byte _08116AE4
- .4byte _08116AEA
- .4byte _08116B70
- .4byte _08116B70
- .4byte _08116AF0
- .4byte _08116AEA
- .4byte _08116B44
- .4byte _08116B70
- .4byte _08116AEA
-_08116AE4:
- movs r0, 0xC
- strb r0, [r6, 0x8]
- b _08116B70
-_08116AEA:
- movs r0, 0xE
- strb r0, [r6, 0x8]
- b _08116B70
-_08116AF0:
- ldr r4, _08116B30 @ =gStringVar4
- ldr r5, _08116B34 @ =gUnknown_203B058
- ldrb r1, [r5]
- adds r0, r4, 0
- bl sub_81163B0
- adds r0, r6, 0
- adds r0, 0x9
- adds r1, r4, 0
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- beq _08116B70
- movs r0, 0x7
- movs r1, 0
- bl sub_80FB9E4
- ldr r0, _08116B38 @ =gStringVar1
- ldr r2, _08116B3C @ =gUnknown_8456C74
- ldrb r1, [r5]
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- bl StringCopy
- ldr r1, _08116B40 @ =gUnknown_8457700
- adds r0, r4, 0
- bl StringExpandPlaceholders
- b _08116B70
- .align 2, 0
-_08116B30: .4byte gStringVar4
-_08116B34: .4byte gUnknown_203B058
-_08116B38: .4byte gStringVar1
-_08116B3C: .4byte gUnknown_8456C74
-_08116B40: .4byte gUnknown_8457700
-_08116B44:
- ldrb r0, [r6, 0x15]
- cmp r0, 0xF0
- bls _08116B6C
- adds r0, r6, 0
- adds r0, 0x9
- ldr r1, _08116B68 @ =gStringVar4
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- beq _08116B70
- movs r0, 0xC
- movs r1, 0
- bl sub_80FB9E4
- movs r0, 0
- b _08116B6E
- .align 2, 0
-_08116B68: .4byte gStringVar4
-_08116B6C:
- adds r0, 0x1
-_08116B6E:
- strb r0, [r6, 0x15]
-_08116B70:
- bl sub_80FB9F4
- lsls r0, 24
- cmp r0, 0
- beq _08116B7C
- b _08116D06
-_08116B7C:
- ldr r0, _08116B90 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _08116B8A
- b _08116D06
-_08116B8A:
- movs r0, 0x7
- strb r0, [r6, 0x8]
- b _08116D06
- .align 2, 0
-_08116B90: .4byte gMain
-_08116B94:
- adds r0, r6, 0
- adds r0, 0x9
- ldr r1, _08116BAC @ =gUnknown_845771C
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _08116BA6
- b _08116D06
-_08116BA6:
- movs r0, 0x8
- strb r0, [r6, 0x8]
- b _08116D06
- .align 2, 0
-_08116BAC: .4byte gUnknown_845771C
-_08116BB0:
- adds r4, r6, 0
- adds r4, 0x9
- bl sub_80FB9F4
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_811A14C
- lsls r0, 24
- asrs r1, r0, 24
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _08116BEE
- cmp r1, r0
- bgt _08116BDC
- subs r0, 0x2
- cmp r1, r0
- beq _08116BF2
- b _08116D06
-_08116BDC:
- cmp r1, 0
- beq _08116BE6
- cmp r1, 0x1
- beq _08116BEE
- b _08116D06
-_08116BE6:
- bl sub_80FA6BC
- movs r0, 0x9
- b _08116BF4
-_08116BEE:
- movs r0, 0x5
- b _08116BF4
-_08116BF2:
- movs r0, 0x6
-_08116BF4:
- strb r0, [r6, 0x8]
-_08116BF6:
- ldrb r0, [r6, 0xE]
- bl RedrawListMenu
- b _08116D06
-_08116BFE:
- bl sub_80FB9F4
- lsls r0, 24
- cmp r0, 0
- bne _08116C0A
- b _08116D06
-_08116C0A:
- movs r0, 0x6
- strb r0, [r6, 0x8]
- b _08116D06
-_08116C10:
- ldrb r0, [r6, 0xD]
- bl ClearWindowTilemap
- ldrb r0, [r6, 0xD]
- movs r1, 0
- bl ClearStdWindowAndFrame
- ldrb r0, [r6, 0xE]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- ldrb r0, [r6, 0xC]
- bl ClearWindowTilemap
- ldrb r0, [r6, 0xB]
- movs r1, 0
- bl ClearStdWindowAndFrame
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- ldrb r0, [r6, 0xD]
- bl RemoveWindow
- ldrb r0, [r6, 0xB]
- bl RemoveWindow
- ldrb r0, [r6, 0xC]
- bl RemoveWindow
- ldrb r0, [r6, 0x11]
- bl DestroyTask
- ldr r0, [r6]
- bl Free
- ldr r0, [r6, 0x4]
- bl Free
- ldrb r0, [r6, 0x8]
- adds r0, 0x1
- strb r0, [r6, 0x8]
- b _08116D06
-_08116C68:
- bl DestroyWirelessStatusIndicatorSprite
- adds r5, r6, 0
- adds r5, 0x9
- ldr r4, _08116C90 @ =gUnknown_8457754
- bl sub_80FB9F4
- lsls r0, 24
- lsrs r0, 22
- adds r0, r4
- ldr r1, [r0]
- adds r0, r5, 0
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- beq _08116D06
- ldr r0, _08116C94 @ =gSpecialVar_Result
- movs r1, 0x6
- b _08116CDC
- .align 2, 0
-_08116C90: .4byte gUnknown_8457754
-_08116C94: .4byte gSpecialVar_Result
-_08116C98:
- bl DestroyWirelessStatusIndicatorSprite
- ldr r0, _08116CA4 @ =gSpecialVar_Result
- movs r1, 0x5
- b _08116CDC
- .align 2, 0
-_08116CA4: .4byte gSpecialVar_Result
-_08116CA8:
- bl DestroyWirelessStatusIndicatorSprite
- adds r5, r6, 0
- adds r5, 0x9
- ldr r4, _08116CC4 @ =gUnknown_8457754
- bl sub_80FB9F4
- lsls r0, 24
- lsrs r0, 22
- adds r0, r4
- ldr r1, [r0]
- adds r0, r5, 0
- b _08116CCE
- .align 2, 0
-_08116CC4: .4byte gUnknown_8457754
-_08116CC8:
- adds r0, r6, 0
- adds r0, 0x9
- ldr r1, _08116CE4 @ =gStringVar4
-_08116CCE:
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- beq _08116D06
- ldr r0, _08116CE8 @ =gSpecialVar_Result
- movs r1, 0x8
-_08116CDC:
- strh r1, [r0]
- movs r0, 0x17
- strb r0, [r6, 0x8]
- b _08116D06
- .align 2, 0
-_08116CE4: .4byte gStringVar4
-_08116CE8: .4byte gSpecialVar_Result
-_08116CEC:
- adds r0, r4, 0
- bl DestroyTask
- bl sub_811A41C
- bl sub_80F8DC0
- b _08116D06
-_08116CFC:
- bl sub_8117990
- adds r0, r4, 0
- bl DestroyTask
-_08116D06:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8116738
-
- thumb_func_start sub_8116D10
-sub_8116D10: @ 8116D10
- push {lr}
- lsls r1, 5
- ldr r0, [r0]
- adds r3, r0, r1
- ldr r0, _08116D44 @ =gUnknown_203B058
- ldrb r0, [r0]
- cmp r0, 0x4
- bne _08116D56
- ldrb r0, [r3, 0x1]
- movs r1, 0x3C
- ands r1, r0
- cmp r1, 0x10
- beq _08116D56
- cmp r1, 0x14
- beq _08116D56
- ldr r0, _08116D48 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0x9]
- movs r2, 0x80
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- bne _08116D4C
- movs r0, 0x1
- b _08116D5C
- .align 2, 0
-_08116D44: .4byte gUnknown_203B058
-_08116D48: .4byte gSaveBlock2Ptr
-_08116D4C:
- ldrb r1, [r3]
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _08116D5A
-_08116D56:
- movs r0, 0
- b _08116D5C
-_08116D5A:
- movs r0, 0x2
-_08116D5C:
- pop {r1}
- bx r1
- thumb_func_end sub_8116D10
-
- thumb_func_start sub_8116D60
-sub_8116D60: @ 8116D60
- push {r4,r5,lr}
- adds r4, r0, 0
- strb r1, [r4, 0xF]
- bl LoadWirelessStatusIndicatorSpriteGfx
- movs r0, 0
- movs r1, 0
- bl CreateWirelessStatusIndicatorSprite
- ldrb r0, [r4, 0xE]
- bl RedrawListMenu
- ldr r5, _08116DD4 @ =gStringVar1
- ldrb r0, [r4, 0xF]
- lsls r0, 5
- ldr r1, [r4]
- adds r1, r0
- adds r1, 0x10
- adds r0, r5, 0
- bl StringCopy7
- ldr r1, [r4]
- ldrb r0, [r4, 0xF]
- lsls r0, 5
- adds r1, r0
- ldrb r1, [r1]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r5, 0
- bl ConvertInternationalString
- ldr r1, _08116DD8 @ =gUnknown_84570C8
- ldr r0, _08116DDC @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- movs r1, 0
- movs r2, 0x1
- bl sub_80FB008
- ldrb r1, [r4, 0xF]
- lsls r1, 5
- ldr r0, [r4]
- adds r0, r1
- adds r4, r0, 0
- adds r4, 0x10
- adds r0, 0x2
- bl sub_8118658
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl sub_80FBF54
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08116DD4: .4byte gStringVar1
-_08116DD8: .4byte gUnknown_84570C8
-_08116DDC: .4byte gSpecialVar_0x8004
- thumb_func_end sub_8116D60
-
- thumb_func_start sub_8116DE0
-sub_8116DE0: @ 8116DE0
- push {lr}
- ldr r0, _08116E0C @ =sub_8116E1C
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r3, _08116E10 @ =gUnknown_203B05C
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r2, _08116E14 @ =gTasks+0x8
- adds r1, r2
- str r1, [r3]
- movs r2, 0
- strb r2, [r1, 0x8]
- strb r2, [r1, 0x9]
- ldr r2, _08116E18 @ =gUnknown_3002028
- str r1, [r2]
- pop {r1}
- bx r1
- .align 2, 0
-_08116E0C: .4byte sub_8116E1C
-_08116E10: .4byte gUnknown_203B05C
-_08116E14: .4byte gTasks+0x8
-_08116E18: .4byte gUnknown_3002028
- thumb_func_end sub_8116DE0
-
- thumb_func_start sub_8116E1C
-sub_8116E1C: @ 8116E1C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _08116E38 @ =gUnknown_203B05C
- ldr r4, [r0]
- ldrb r0, [r4, 0x8]
- cmp r0, 0xB
- bhi _08116F20
- lsls r0, 2
- ldr r1, _08116E3C @ =_08116E40
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08116E38: .4byte gUnknown_203B05C
-_08116E3C: .4byte _08116E40
- .align 2, 0
-_08116E40:
- .4byte _08116E70
- .4byte _08116F20
- .4byte _08116EA4
- .4byte _08116EC8
- .4byte _08116F20
- .4byte _08116F20
- .4byte _08116F20
- .4byte _08116F20
- .4byte _08116F20
- .4byte _08116F20
- .4byte _08116EF8
- .4byte _08116F16
-_08116E70:
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl sub_80FAF58
- bl sub_800B1F4
- bl OpenLink
- bl sub_80FBBD8
- movs r0, 0x1
- bl sub_80FB128
- movs r0, 0x70
- bl AllocZeroed
- str r0, [r4, 0x4]
- movs r0, 0x80
- lsls r0, 2
- bl AllocZeroed
- str r0, [r4]
- movs r0, 0x2
- strb r0, [r4, 0x8]
- b _08116F20
-_08116EA4:
- ldr r0, [r4, 0x4]
- movs r1, 0x4
- bl sub_811A650
- ldr r0, [r4]
- movs r1, 0x10
- bl sub_811A5E4
- ldr r0, [r4, 0x4]
- movs r1, 0xFF
- bl sub_811A054
- movs r1, 0
- strb r0, [r4, 0x11]
- strb r1, [r4, 0xF]
- movs r0, 0x3
- strb r0, [r4, 0x8]
- b _08116F20
-_08116EC8:
- bl sub_8116FE4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08116EDA
- movs r0, 0x2
- bl PlaySE
-_08116EDA:
- ldr r0, _08116EF4 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- movs r2, 0x26
- ldrsh r0, [r1, r2]
- cmp r0, 0xFF
- bne _08116F20
- movs r0, 0xA
- strb r0, [r4, 0x8]
- b _08116F20
- .align 2, 0
-_08116EF4: .4byte gTasks
-_08116EF8:
- ldrb r0, [r4, 0x11]
- bl DestroyTask
- ldr r0, [r4]
- bl Free
- ldr r0, [r4, 0x4]
- bl Free
- bl sub_80F8DC0
- ldrb r0, [r4, 0x8]
- adds r0, 0x1
- strb r0, [r4, 0x8]
- b _08116F20
-_08116F16:
- bl sub_80F8DC0
- adds r0, r5, 0
- bl DestroyTask
-_08116F20:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8116E1C
-
- thumb_func_start sub_8116F28
-sub_8116F28: @ 8116F28
- push {lr}
- adds r2, r0, 0
- cmp r1, 0xFF
- bne _08116F34
-_08116F30:
- movs r0, 0x1
- b _08116F58
-_08116F34:
- cmp r1, 0xD
- bhi _08116F56
- ldr r0, _08116F44 @ =gUnknown_8457094
- lsls r1, 2
- adds r1, r0
- ldr r1, [r1]
- b _08116F50
- .align 2, 0
-_08116F44: .4byte gUnknown_8457094
-_08116F48:
- ldrb r0, [r1]
- cmp r0, r2
- beq _08116F30
- adds r1, 0x1
-_08116F50:
- ldrb r0, [r1]
- cmp r0, 0xFF
- bne _08116F48
-_08116F56:
- movs r0, 0
-_08116F58:
- pop {r1}
- bx r1
- thumb_func_end sub_8116F28
-
- thumb_func_start sub_8116F5C
-sub_8116F5C: @ 8116F5C
- push {lr}
- ldr r0, [r0]
- lsls r1, 5
- adds r1, r0, r1
- ldrb r2, [r1, 0x1A]
- lsls r0, r2, 30
- lsrs r0, 30
- cmp r0, 0x1
- bne _08116F8E
- ldrb r0, [r1, 0xA]
- lsrs r0, 7
- cmp r0, 0
- beq _08116F7A
- movs r0, 0x3
- b _08116F90
-_08116F7A:
- lsls r0, r2, 29
- cmp r0, 0
- bge _08116F84
- movs r0, 0x1
- b _08116F90
-_08116F84:
- ldrb r0, [r1, 0x1B]
- cmp r0, 0
- beq _08116F8E
- movs r0, 0x2
- b _08116F90
-_08116F8E:
- movs r0, 0
-_08116F90:
- pop {r1}
- bx r1
- thumb_func_end sub_8116F5C
-
- thumb_func_start sub_8116F94
-sub_8116F94: @ 8116F94
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x8
- adds r5, r0, 0
- adds r4, r1, 0
- adds r6, r2, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r6, 24
- lsrs r6, 24
- ldr r0, _08116FE0 @ =gUnknown_203B05C
- ldr r0, [r0]
- mov r8, r0
- bl sub_8116F5C
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r4, 5
- mov r2, r8
- ldr r3, [r2]
- adds r3, r1
- str r0, [sp]
- lsls r4, 24
- lsrs r4, 24
- str r4, [sp, 0x4]
- adds r0, r5, 0
- movs r1, 0x8
- adds r2, r6, 0
- bl sub_811A81C
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08116FE0: .4byte gUnknown_203B05C
- thumb_func_end sub_8116F94
-
- thumb_func_start sub_8116FE4
-sub_8116FE4: @ 8116FE4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x4
- ldr r0, _0811704C @ =gUnknown_203B05C
- ldr r6, [r0]
- movs r7, 0
- movs r3, 0
-_08116FF4:
- ldr r0, [r6]
- lsls r5, r3, 5
- adds r2, r0, r5
- ldrb r0, [r2, 0x1A]
- lsls r0, 30
- mov r8, r5
- cmp r0, 0
- beq _081170C0
- ldr r1, [r6, 0x4]
- adds r0, r2, 0
- str r3, [sp]
- bl sub_811A748
- adds r4, r0, 0
- ldr r3, [sp]
- cmp r4, 0xFF
- beq _0811708E
- ldr r0, [r6]
- adds r2, r0, r5
- ldrb r1, [r2, 0x1A]
- lsls r0, r1, 30
- lsrs r0, 30
- cmp r0, 0x1
- bne _0811706C
- lsls r0, r4, 3
- subs r0, r4
- lsls r4, r0, 2
- ldr r1, [r6, 0x4]
- adds r1, r4
- adds r0, r2, 0
- bl sub_811A6DC
- ldr r3, [sp]
- cmp r0, 0
- beq _08117050
- ldr r1, [r6]
- ldr r0, [r6, 0x4]
- adds r1, r5
- adds r0, r4
- ldm r0!, {r2,r4,r7}
- stm r1!, {r2,r4,r7}
- ldm r0!, {r2,r4,r7}
- stm r1!, {r2,r4,r7}
- b _0811707A
- .align 2, 0
-_0811704C: .4byte gUnknown_203B05C
-_08117050:
- ldr r0, [r6]
- adds r1, r0, r5
- ldrb r0, [r1, 0x1B]
- cmp r0, 0
- beq _08117084
- subs r0, 0x1
- strb r0, [r1, 0x1B]
- ldr r0, [r6]
- adds r0, r5
- ldrb r0, [r0, 0x1B]
- cmp r0, 0
- bne _08117084
- movs r7, 0x2
- b _08117084
-_0811706C:
- movs r4, 0x4
- negs r4, r4
- adds r0, r4, 0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0x1A]
-_0811707A:
- ldr r0, [r6]
- adds r0, r5
- movs r1, 0x40
- strb r1, [r0, 0x1B]
- movs r7, 0x1
-_08117084:
- ldr r0, [r6]
- add r0, r8
- movs r1, 0
- strh r1, [r0, 0x18]
- b _081170C0
-_0811708E:
- ldr r0, [r6]
- adds r1, r0, r5
- ldrb r0, [r1, 0x1A]
- lsls r0, 30
- lsrs r0, 30
- cmp r0, 0x2
- beq _081170C0
- ldrh r0, [r1, 0x18]
- adds r0, 0x1
- strh r0, [r1, 0x18]
- ldr r0, [r6]
- adds r2, r0, r5
- ldrh r1, [r2, 0x18]
- ldr r0, _081170FC @ =0x0000012b
- cmp r1, r0
- bls _081170C0
- ldrb r0, [r2, 0x1A]
- movs r7, 0x4
- negs r7, r7
- adds r1, r7, 0
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2, 0x1A]
- movs r7, 0x2
-_081170C0:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0xF
- bls _08116FF4
- movs r5, 0
- movs r4, 0x3
-_081170CE:
- ldr r0, [r6]
- ldr r1, [r6, 0x4]
- adds r1, r5
- movs r2, 0x10
- bl sub_811A798
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- beq _081170E4
- movs r7, 0x1
-_081170E4:
- adds r5, 0x1C
- subs r4, 0x1
- cmp r4, 0
- bge _081170CE
- adds r0, r7, 0
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_081170FC: .4byte 0x0000012b
- thumb_func_end sub_8116FE4
-
- thumb_func_start sub_8117100
-sub_8117100: @ 8117100
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl CB2_ReturnFromLinkTrade
- adds r0, r4, 0
- bl DestroyTask
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8117100
-
- thumb_func_start sub_8117118
-sub_8117118: @ 8117118
- push {lr}
- ldr r0, _0811712C @ =sub_8117100
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_0811712C: .4byte sub_8117100
- thumb_func_end sub_8117118
-
- thumb_func_start sub_8117130
-sub_8117130: @ 8117130
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, _0811716C @ =gUnknown_203B06C
- mov r8, r0
- bl GetMultiplayerId
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- mov r0, r8
- bl sub_811B1EC
- adds r7, r0, 0
- ldr r1, _08117170 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r5, r0, r1
- movs r1, 0x8
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _0811719C
- cmp r0, 0x1
- bgt _08117174
- cmp r0, 0
- beq _0811717E
- b _0811725C
- .align 2, 0
-_0811716C: .4byte gUnknown_203B06C
-_08117170: .4byte gTasks
-_08117174:
- cmp r0, 0x2
- beq _081171D8
- cmp r0, 0x3
- beq _08117210
- b _0811725C
-_0811717E:
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, _08117198 @ =gPlayerParty
- adds r1, r0
- movs r0, 0
- movs r2, 0x64
- bl SendBlock
- b _0811725C
- .align 2, 0
-_08117198: .4byte gPlayerParty
-_0811719C:
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bne _0811725C
- bl GetMultiplayerId
- adds r1, r0, 0
- ldr r0, _081171D0 @ =gEnemyParty
- movs r2, 0x1
- eors r1, r2
- lsls r1, 24
- lsrs r1, 16
- ldr r2, _081171D4 @ =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0x64
- bl memcpy
- movs r0, 0x32
- bl IncrementGameStat
- bl ResetBlockReceivedFlags
- b _081171FA
- .align 2, 0
-_081171D0: .4byte gEnemyParty
-_081171D4: .4byte gBlockRecvBuffer
-_081171D8:
- ldr r4, _08117204 @ =gBlockSendBuffer
- ldr r0, _08117208 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r0, _0811720C @ =0x00002cd0
- adds r1, r0
- adds r0, r4, 0
- movs r2, 0xDC
- bl memcpy
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0xDC
- bl SendBlock
- lsls r0, 24
- cmp r0, 0
- beq _0811725C
-_081171FA:
- ldrh r0, [r5, 0x8]
- adds r0, 0x1
- strh r0, [r5, 0x8]
- b _0811725C
- .align 2, 0
-_08117204: .4byte gBlockSendBuffer
-_08117208: .4byte gSaveBlock1Ptr
-_0811720C: .4byte 0x00002cd0
-_08117210:
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bne _0811725C
- ldr r4, _08117268 @ =gLinkPartnerMail
- bl GetMultiplayerId
- adds r1, r0, 0
- movs r0, 0x1
- eors r1, r0
- lsls r1, 24
- lsrs r1, 16
- ldr r0, _0811726C @ =gBlockRecvBuffer
- adds r1, r0
- adds r0, r4, 0
- movs r2, 0xD8
- bl memcpy
- bl ResetBlockReceivedFlags
- ldr r1, _08117270 @ =gSelectedTradeMonPositions
- strb r7, [r1]
- movs r0, 0x6
- strb r0, [r1, 0x1]
- ldr r1, _08117274 @ =gMain
- ldr r0, _08117278 @ =CB2_ReturnToField
- str r0, [r1, 0x8]
- ldr r0, _0811727C @ =CB2_InitTradeAnim_LinkTrade
- bl SetMainCallback2
- mov r0, r8
- bl sub_811B148
- adds r0, r6, 0
- bl DestroyTask
-_0811725C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08117268: .4byte gLinkPartnerMail
-_0811726C: .4byte gBlockRecvBuffer
-_08117270: .4byte gSelectedTradeMonPositions
-_08117274: .4byte gMain
-_08117278: .4byte CB2_ReturnToField
-_0811727C: .4byte CB2_InitTradeAnim_LinkTrade
- thumb_func_end sub_8117130
-
- thumb_func_start sub_8117280
-sub_8117280: @ 8117280
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r1, _081172A4 @ =gTasks
- lsls r0, 2
- add r0, r8
- lsls r0, 3
- adds r4, r0, r1
- movs r1, 0x8
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _081172A8
- cmp r0, 0x1
- beq _081172C0
- b _0811734A
- .align 2, 0
-_081172A4: .4byte gTasks
-_081172A8:
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _081172B8
- movs r0, 0x2
- bl sub_800A474
-_081172B8:
- ldrh r0, [r4, 0x8]
- adds r0, 0x1
- strh r0, [r4, 0x8]
- b _0811734A
-_081172C0:
- bl GetBlockReceivedStatus
- adds r4, r0, 0
- bl sub_800A8D4
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bne _0811734A
- movs r4, 0
- ldr r0, _081172E0 @ =gTrainerCards
- adds r7, r0, 0
- adds r7, 0x38
- ldr r6, _081172E4 @ =gLinkPlayers
- adds r5, r0, 0
- b _08117302
- .align 2, 0
-_081172E0: .4byte gTrainerCards
-_081172E4: .4byte gLinkPlayers
-_081172E8:
- lsls r0, r4, 8
- ldr r1, _08117338 @ =gBlockRecvBuffer
- adds r1, r0, r1
- adds r0, r5, 0
- movs r2, 0x60
- bl memcpy
- ldrh r0, [r6]
- strb r0, [r7]
- adds r7, 0x60
- adds r6, 0x1C
- adds r5, 0x60
- adds r4, 0x1
-_08117302:
- bl GetLinkPlayerCount
- lsls r0, 24
- lsrs r0, 24
- cmp r4, r0
- blt _081172E8
- bl GetLinkPlayerCount
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _0811733C
- bl GetMultiplayerId
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 16
- ldr r1, _08117338 @ =gBlockRecvBuffer
- adds r1, r0, r1
- adds r0, r1, 0
- adds r0, 0x60
- ldrh r0, [r0]
- bl sub_81446D0
- b _08117340
- .align 2, 0
-_08117338: .4byte gBlockRecvBuffer
-_0811733C:
- bl sub_81446C4
-_08117340:
- bl ResetBlockReceivedFlags
- mov r0, r8
- bl DestroyTask
-_0811734A:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8117280
-
- thumb_func_start sub_8117354
-sub_8117354: @ 8117354
- push {r4,lr}
- ldr r0, _0811736C @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r4, r0, r1
- ldrb r0, [r4]
- cmp r0, 0
- beq _08117370
- cmp r0, 0x1
- beq _08117384
- b _081173A2
- .align 2, 0
-_0811736C: .4byte gMain
-_08117370:
- ldr r0, _08117380 @ =sub_8117280
- movs r1, 0x5
- bl CreateTask
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _081173A2
- .align 2, 0
-_08117380: .4byte sub_8117280
-_08117384:
- ldr r0, _081173B8 @ =sub_8117280
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- bne _081173A2
- bl GetMultiplayerId
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _081173BC @ =CB2_ReturnToField
- bl ShowTrainerCardInLink
-_081173A2:
- bl RunTasks
- bl RunTextPrinters
- bl AnimateSprites
- bl BuildOamBuffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081173B8: .4byte sub_8117280
-_081173BC: .4byte CB2_ReturnToField
- thumb_func_end sub_8117354
-
- thumb_func_start sub_81173C0
-sub_81173C0: @ 81173C0
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r6, 16
- lsrs r6, 16
- bl HealPlayerParty
- bl SavePlayerParty
- bl LoadPlayerBag
- ldr r5, _0811742C @ =gLinkPlayers
- ldr r0, _08117430 @ =0x00002211
- str r0, [r5, 0x14]
- bl GetMultiplayerId
- adds r4, r0, 0
- bl GetMultiplayerId
- lsls r4, 24
- lsrs r4, 24
- lsls r1, r4, 3
- subs r1, r4
- lsls r1, 2
- adds r1, r5
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r1, 0x18]
- bl GetMultiplayerId
- adds r4, r0, 0
- bl GetMultiplayerId
- movs r2, 0x1
- eors r4, r2
- lsls r4, 24
- lsrs r4, 24
- lsls r1, r4, 3
- subs r1, r4
- lsls r1, 2
- adds r1, r5
- eors r0, r2
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r1, 0x18]
- ldr r1, _08117434 @ =gMain
- ldr r0, _08117438 @ =sub_8081668
- str r0, [r1, 0x8]
- ldr r0, _0811743C @ =gBattleTypeFlags
- str r6, [r0]
- bl PlayBattleBGM
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811742C: .4byte gLinkPlayers
-_08117430: .4byte 0x00002211
-_08117434: .4byte gMain
-_08117438: .4byte sub_8081668
-_0811743C: .4byte gBattleTypeFlags
- thumb_func_end sub_81173C0
-
- thumb_func_start sub_8117440
-sub_8117440: @ 8117440
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x8
- adds r3, r0, 0
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r3, 16
- lsrs r3, 16
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- ldr r0, _081174AC @ =0x0000406f
- adds r1, r3, 0
- bl VarSet
- ldr r6, _081174B0 @ =gSaveBlock1Ptr
- ldr r1, [r6]
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- ldrb r1, [r1, 0x5]
- lsls r1, 24
- asrs r1, 24
- movs r2, 0x1
- negs r2, r2
- mov r8, r2
- lsls r4, 24
- asrs r4, 24
- lsls r5, 24
- asrs r5, 24
- str r5, [sp]
- adds r3, r4, 0
- bl SetWarpDestination
- ldr r0, [r6]
- movs r1, 0x4
- ldrsb r1, [r0, r1]
- movs r2, 0x5
- ldrsb r2, [r0, r2]
- str r4, [sp]
- str r5, [sp, 0x4]
- movs r0, 0
- mov r3, r8
- bl SetDynamicWarpWithCoords
- bl WarpIntoMap
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081174AC: .4byte 0x0000406f
-_081174B0: .4byte gSaveBlock1Ptr
- thumb_func_end sub_8117440
-
- thumb_func_start sub_81174B4
-sub_81174B4: @ 81174B4
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x4
- adds r4, r0, 0
- adds r5, r1, 0
- mov r8, r2
- adds r6, r3, 0
- ldr r1, [sp, 0x18]
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- lsls r1, 16
- lsrs r1, 16
- ldr r0, _08117524 @ =gSpecialVar_0x8004
- strh r1, [r0]
- ldr r0, _08117528 @ =0x0000406f
- bl VarSet
- bl GetLinkPlayerCount
- ldr r1, _0811752C @ =gUnknown_3005030
- strb r0, [r1]
- bl GetMultiplayerId
- ldr r1, _08117530 @ =gUnknown_300502C
- strb r0, [r1]
- bl SetCableClubWarp
- lsls r4, 24
- asrs r4, 24
- lsls r5, 24
- asrs r5, 24
- movs r2, 0x1
- negs r2, r2
- mov r0, r8
- lsls r0, 24
- asrs r0, 24
- mov r8, r0
- lsls r6, 24
- asrs r6, 24
- str r6, [sp]
- adds r0, r4, 0
- adds r1, r5, 0
- mov r3, r8
- bl SetWarpDestination
- bl WarpIntoMap
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08117524: .4byte gSpecialVar_0x8004
-_08117528: .4byte 0x0000406f
-_0811752C: .4byte gUnknown_3005030
-_08117530: .4byte gUnknown_300502C
- thumb_func_end sub_81174B4
-
- thumb_func_start sub_8117534
-sub_8117534: @ 8117534
- push {r4,lr}
- ldr r0, _0811754C @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r4, r0, r1
- ldrb r0, [r4]
- cmp r0, 0
- beq _08117550
- cmp r0, 0x1
- beq _08117564
- b _08117576
- .align 2, 0
-_0811754C: .4byte gMain
-_08117550:
- ldr r0, _08117560 @ =sub_8117280
- movs r1, 0x5
- bl CreateTask
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _08117576
- .align 2, 0
-_08117560: .4byte sub_8117280
-_08117564:
- ldr r0, _0811758C @ =sub_8117280
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- bne _08117576
- ldr r0, _08117590 @ =sub_8056788
- bl SetMainCallback2
-_08117576:
- bl RunTasks
- bl RunTextPrinters
- bl AnimateSprites
- bl BuildOamBuffer
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0811758C: .4byte sub_8117280
-_08117590: .4byte sub_8056788
- thumb_func_end sub_8117534
-
- thumb_func_start sub_8117594
-sub_8117594: @ 8117594
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- bl TrainerCard_GenerateCardForLinkPlayer
- cmp r5, 0
- beq _081175AE
- bl sub_81440E8
- adds r1, r4, 0
- adds r1, 0x60
- strh r0, [r1]
- b _081175B4
-_081175AE:
- adds r0, r4, 0
- adds r0, 0x60
- strh r5, [r0]
-_081175B4:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8117594
-
- thumb_func_start sub_81175BC
-sub_81175BC: @ 81175BC
- push {r4,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_81446C4
- ldr r0, _081175DC @ =gUnknown_203B058
- ldrb r0, [r0]
- subs r0, 0x1
- cmp r0, 0xD
- bhi _08117620
- lsls r0, 2
- ldr r1, _081175E0 @ =_081175E4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_081175DC: .4byte gUnknown_203B058
-_081175E0: .4byte _081175E4
- .align 2, 0
-_081175E4:
- .4byte _0811761C
- .4byte _0811761C
- .4byte _0811761C
- .4byte _0811761C
- .4byte _08117620
- .4byte _08117620
- .4byte _08117620
- .4byte _08117620
- .4byte _0811761C
- .4byte _0811761C
- .4byte _0811761C
- .4byte _08117620
- .4byte _0811761C
- .4byte _0811761C
-_0811761C:
- bl RecordMixTrainerNames
-_08117620:
- ldr r0, _08117638 @ =gUnknown_203B058
- ldrb r0, [r0]
- subs r0, 0x1
- cmp r0, 0x50
- bls _0811762C
- b _081178E0
-_0811762C:
- lsls r0, 2
- ldr r1, _0811763C @ =_08117640
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08117638: .4byte gUnknown_203B058
-_0811763C: .4byte _08117640
- .align 2, 0
-_08117640:
- .4byte _081177A0
- .4byte _081177C8
- .4byte _081177F0
- .4byte _08117818
- .4byte _08117854
- .4byte _081178E0
- .4byte _081178E0
- .4byte _08117878
- .4byte _08117890
- .4byte _081178B0
- .4byte _081178C8
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _08117784
- .4byte _081178E0
- .4byte _081178E0
- .4byte _08117844
- .4byte _08117854
- .4byte _081178E0
- .4byte _081178E0
- .4byte _08117878
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _081178E0
- .4byte _08117784
-_08117784:
- bl CleanupOverworldWindowsAndTilemaps
- ldr r1, _08117798 @ =gMain
- ldr r0, _0811779C @ =sub_811C1C8
- str r0, [r1, 0x8]
- movs r0, 0x2
- bl InitChooseHalfPartyForBattle
- b _081178E0
- .align 2, 0
-_08117798: .4byte gMain
-_0811779C: .4byte sub_811C1C8
-_081177A0:
- bl CleanupOverworldWindowsAndTilemaps
- ldr r0, _081177C4 @ =gBlockSendBuffer
- movs r1, 0x1
- bl sub_8117594
- bl HealPlayerParty
- bl SavePlayerParty
- bl LoadPlayerBag
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0
- movs r1, 0
- movs r2, 0x6
- b _0811782E
- .align 2, 0
-_081177C4: .4byte gBlockSendBuffer
-_081177C8:
- bl CleanupOverworldWindowsAndTilemaps
- bl HealPlayerParty
- bl SavePlayerParty
- bl LoadPlayerBag
- ldr r0, _081177EC @ =gBlockSendBuffer
- movs r1, 0x1
- bl sub_8117594
- movs r0, 0x2
- str r0, [sp]
- movs r0, 0
- movs r1, 0
- movs r2, 0x6
- b _0811782E
- .align 2, 0
-_081177EC: .4byte gBlockSendBuffer
-_081177F0:
- bl CleanupOverworldWindowsAndTilemaps
- bl HealPlayerParty
- bl SavePlayerParty
- bl LoadPlayerBag
- ldr r0, _08117814 @ =gBlockSendBuffer
- movs r1, 0x1
- bl sub_8117594
- movs r0, 0x5
- str r0, [sp]
- movs r0, 0
- movs r1, 0x3
- b _0811782C
- .align 2, 0
-_08117814: .4byte gBlockSendBuffer
-_08117818:
- ldr r0, _0811783C @ =gBlockSendBuffer
- movs r1, 0x1
- bl sub_8117594
- bl CleanupOverworldWindowsAndTilemaps
- movs r0, 0x3
- str r0, [sp]
- movs r0, 0
- movs r1, 0x1
-_0811782C:
- movs r2, 0x5
-_0811782E:
- movs r3, 0x8
- bl sub_81174B4
- ldr r0, _08117840 @ =sub_8117534
- bl SetMainCallback2
- b _081178E0
- .align 2, 0
-_0811783C: .4byte gBlockSendBuffer
-_08117840: .4byte sub_8117534
-_08117844:
- ldr r0, _08117850 @ =sub_8117130
- movs r1, 0
- bl CreateTask
- b _081178E0
- .align 2, 0
-_08117850: .4byte sub_8117130
-_08117854:
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _08117864
- bl sub_80F8CFC
- b _08117872
-_08117864:
- bl sub_80F8D14
- movs r0, 0x45
- movs r1, 0
- movs r2, 0x1
- bl sub_80FAF58
-_08117872:
- bl sub_8128420
- b _081178E0
-_08117878:
- ldr r0, _08117888 @ =gBlockSendBuffer
- movs r1, 0
- bl sub_8117594
- ldr r0, _0811788C @ =sub_8117354
- bl SetMainCallback2
- b _081178E0
- .align 2, 0
-_08117888: .4byte gBlockSendBuffer
-_0811788C: .4byte sub_8117354
-_08117890:
- movs r0, 0x8
- movs r1, 0x5
- movs r2, 0x1
- bl sub_8117440
- bl GetCursorSelectionMonId
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _081178AC @ =CB2_LoadMap
- bl sub_8147AA8
- b _081178E0
- .align 2, 0
-_081178AC: .4byte CB2_LoadMap
-_081178B0:
- movs r0, 0x7
- movs r1, 0x9
- movs r2, 0x1
- bl sub_8117440
- ldr r0, _081178C4 @ =CB2_LoadMap
- bl sub_814B754
- b _081178E0
- .align 2, 0
-_081178C4: .4byte CB2_LoadMap
-_081178C8:
- movs r0, 0x8
- movs r1, 0x5
- movs r2, 0x1
- bl sub_8117440
- bl GetCursorSelectionMonId
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _081178F8 @ =CB2_LoadMap
- bl sub_81507FC
-_081178E0:
- adds r0, r4, 0
- bl DestroyTask
- ldr r1, _081178FC @ =gSpecialVar_Result
- movs r0, 0x1
- strh r0, [r1]
- bl ScriptContext2_Disable
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081178F8: .4byte CB2_LoadMap
-_081178FC: .4byte gSpecialVar_Result
- thumb_func_end sub_81175BC
-
- thumb_func_start sub_8117900
-sub_8117900: @ 8117900
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _08117924 @ =gTasks+0x8
- adds r4, r0, r1
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0x1
- beq _08117944
- cmp r0, 0x1
- bgt _08117928
- cmp r0, 0
- beq _08117932
- b _08117988
- .align 2, 0
-_08117924: .4byte gTasks+0x8
-_08117928:
- cmp r0, 0x2
- beq _08117958
- cmp r0, 0x3
- beq _08117974
- b _08117988
-_08117932:
- ldr r1, _08117940 @ =gSpecialVar_Result
- movs r0, 0x1
- strh r0, [r1]
- bl EnableBothScriptContexts
- b _08117968
- .align 2, 0
-_08117940: .4byte gSpecialVar_Result
-_08117944:
- bl ScriptContext1_IsScriptSetUp
- lsls r0, 24
- cmp r0, 0
- bne _08117988
- movs r0, 0x1
- movs r1, 0
- bl fade_screen
- b _08117968
-_08117958:
- ldr r0, _08117970 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08117988
- bl sub_800AB9C
-_08117968:
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _08117988
- .align 2, 0
-_08117970: .4byte gPaletteFade
-_08117974:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08117988
- adds r0, r5, 0
- bl DestroyTask
- bl sub_81179A4
-_08117988:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8117900
-
- thumb_func_start sub_8117990
-sub_8117990: @ 8117990
- push {lr}
- ldr r0, _081179A0 @ =sub_8117900
- movs r1, 0
- bl CreateTask
- pop {r0}
- bx r0
- .align 2, 0
-_081179A0: .4byte sub_8117900
- thumb_func_end sub_8117990
-
- thumb_func_start sub_81179A4
-sub_81179A4: @ 81179A4
- push {lr}
- ldr r0, _081179C4 @ =sub_81175BC
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _081179C8 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r0, 0
- strh r0, [r1, 0x8]
- pop {r0}
- bx r0
- .align 2, 0
-_081179C4: .4byte sub_81175BC
-_081179C8: .4byte gTasks
- thumb_func_end sub_81179A4
-
- thumb_func_start MEvent_CreateTask_Leader
-MEvent_CreateTask_Leader: @ 81179CC
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _081179FC @ =sub_8117A0C
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08117A00 @ =gUnknown_203B05C
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08117A04 @ =gTasks+0x8
- adds r1, r0
- str r1, [r2]
- movs r2, 0
- strb r2, [r1, 0xC]
- strb r2, [r1, 0xD]
- strb r4, [r1, 0x18]
- ldr r0, _08117A08 @ =gSpecialVar_Result
- strh r2, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081179FC: .4byte sub_8117A0C
-_08117A00: .4byte gUnknown_203B05C
-_08117A04: .4byte gTasks+0x8
-_08117A08: .4byte gSpecialVar_Result
- thumb_func_end MEvent_CreateTask_Leader
-
- thumb_func_start sub_8117A0C
-sub_8117A0C: @ 8117A0C
- push {r4-r6,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08117A2C @ =gUnknown_203B05C
- ldr r5, [r0]
- ldrb r0, [r5, 0xC]
- cmp r0, 0x11
- bls _08117A20
- b _08117ECA
-_08117A20:
- lsls r0, 2
- ldr r1, _08117A30 @ =_08117A34
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08117A2C: .4byte gUnknown_203B05C
-_08117A30: .4byte _08117A34
- .align 2, 0
-_08117A34:
- .4byte _08117A7C
- .4byte _08117AB8
- .4byte _08117B7C
- .4byte _08117BAC
- .4byte _08117BBC
- .4byte _08117C0C
- .4byte _08117BE4
- .4byte _08117C12
- .4byte _08117CB2
- .4byte _08117D94
- .4byte _08117DA4
- .4byte _08117DBA
- .4byte _08117DD2
- .4byte _08117DEE
- .4byte _08117E26
- .4byte _08117E4C
- .4byte _08117E80
- .4byte _08117EBA
-_08117A7C:
- ldr r1, _08117AB0 @ =gUnknown_203B058
- ldrb r0, [r5, 0x18]
- strb r0, [r1]
- ldr r1, _08117AB4 @ =gUnknown_203B059
- movs r0, 0x2
- strb r0, [r1]
- ldrb r0, [r5, 0x18]
- movs r1, 0
- movs r2, 0
- bl sub_80FAF58
- movs r0, 0
- movs r1, 0
- bl sub_80FAF74
- bl sub_800B1F4
- bl OpenLink
- movs r0, 0x2
- bl sub_80FBB8C
- movs r0, 0x1
- strb r0, [r5, 0xC]
- b _08117ECA
- .align 2, 0
-_08117AB0: .4byte gUnknown_203B058
-_08117AB4: .4byte gUnknown_203B059
-_08117AB8:
- movs r0, 0x70
- bl AllocZeroed
- str r0, [r5, 0x4]
- movs r0, 0xA0
- bl AllocZeroed
- str r0, [r5]
- movs r0, 0xA0
- bl AllocZeroed
- str r0, [r5, 0x8]
- ldr r0, [r5, 0x4]
- movs r1, 0x4
- bl sub_811A650
- ldr r0, [r5]
- movs r1, 0x5
- bl sub_811A5E4
- ldr r0, [r5]
- adds r1, r0, 0
- adds r1, 0x10
- bl sub_80FCD50
- ldr r1, [r5]
- movs r3, 0
- movs r0, 0
- strh r0, [r1, 0x18]
- ldr r2, [r5]
- ldrb r1, [r2, 0x1A]
- subs r0, 0x4
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0x1A]
- ldr r2, [r5]
- ldrb r1, [r2, 0x1A]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x1A]
- ldr r0, [r5]
- strb r3, [r0, 0x1B]
- ldr r0, [r5, 0x4]
- movs r1, 0xFF
- bl sub_811A054
- strb r0, [r5, 0x17]
- ldr r0, _08117B6C @ =gUnknown_8456CFC
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r1, [sp, 0x4]
- bl GetMysteryGiftBaseBlock
- lsls r0, 16
- ldr r2, _08117B70 @ =0x0000ffff
- ldr r1, [sp, 0x4]
- ands r1, r2
- orrs r1, r0
- str r1, [sp, 0x4]
- mov r0, sp
- bl AddWindow
- strb r0, [r5, 0xF]
- ldrb r0, [r5, 0xF]
- bl MG_DrawTextBorder
- ldr r0, _08117B74 @ =gMultiuseListMenuTemplate
- adds r2, r0, 0
- ldr r1, _08117B78 @ =gUnknown_8456D34
- ldm r1!, {r3,r4,r6}
- stm r2!, {r3,r4,r6}
- ldm r1!, {r3,r4,r6}
- stm r2!, {r3,r4,r6}
- ldrb r1, [r5, 0xF]
- strb r1, [r0, 0x10]
- movs r1, 0
- movs r2, 0
- bl ListMenuInit
- strb r0, [r5, 0x12]
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- movs r0, 0x1
- strb r0, [r5, 0x13]
- b _08117C02
- .align 2, 0
-_08117B6C: .4byte gUnknown_8456CFC
-_08117B70: .4byte 0x0000ffff
-_08117B74: .4byte gMultiuseListMenuTemplate
-_08117B78: .4byte gUnknown_8456D34
-_08117B7C:
- ldr r0, _08117B9C @ =gStringVar1
- ldr r2, _08117BA0 @ =gUnknown_8456C74
- ldr r4, _08117BA4 @ =gUnknown_203B058
- ldrb r1, [r4]
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- bl StringCopy
- ldr r0, _08117BA8 @ =gStringVar4
- ldrb r1, [r4]
- bl sub_811599C
- movs r0, 0x3
- strb r0, [r5, 0xC]
- b _08117ECA
- .align 2, 0
-_08117B9C: .4byte gStringVar1
-_08117BA0: .4byte gUnknown_8456C74
-_08117BA4: .4byte gUnknown_203B058
-_08117BA8: .4byte gStringVar4
-_08117BAC:
- ldr r0, _08117BB8 @ =gStringVar4
- bl AddTextPrinterToWindow1
- movs r0, 0x4
- strb r0, [r5, 0xC]
- b _08117ECA
- .align 2, 0
-_08117BB8: .4byte gStringVar4
-_08117BBC:
- adds r0, r5, 0
- movs r1, 0x5
- movs r2, 0x6
- bl sub_8116444
- ldr r0, _08117BE0 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _08117BD4
- b _08117ECA
-_08117BD4:
- movs r0, 0xD
- strb r0, [r5, 0xC]
- bl DestroyWirelessStatusIndicatorSprite
- b _08117ECA
- .align 2, 0
-_08117BE0: .4byte gMain
-_08117BE4:
- adds r0, r5, 0
- adds r0, 0xD
- ldr r1, _08117C08 @ =gUnknown_84577F8
- bl MG_PrintTextOnWindow1AndWaitButton
- cmp r0, 0
- bne _08117BF4
- b _08117ECA
-_08117BF4:
- ldr r0, [r5]
- bl sub_81165E8
- strb r0, [r5, 0x13]
- ldrb r0, [r5, 0x12]
- bl RedrawListMenu
-_08117C02:
- movs r0, 0x2
- strb r0, [r5, 0xC]
- b _08117ECA
- .align 2, 0
-_08117C08: .4byte gUnknown_84577F8
-_08117C0C:
- movs r0, 0x7
- strb r0, [r5, 0xC]
- b _08117ECA
-_08117C12:
- adds r0, r5, 0
- adds r0, 0xD
- adds r1, r5, 0
- adds r1, 0x14
- ldr r3, _08117C38 @ =gStringVar4
- movs r2, 0
- bl mevent_message_print_and_prompt_yes_no
- lsls r0, 24
- asrs r4, r0, 24
- cmp r4, 0
- beq _08117C42
- cmp r4, 0
- bgt _08117C3C
- movs r0, 0x1
- negs r0, r0
- cmp r4, r0
- beq _08117C84
- b _08117ECA
- .align 2, 0
-_08117C38: .4byte gStringVar4
-_08117C3C:
- cmp r4, 0x1
- beq _08117C84
- b _08117ECA
-_08117C42:
- bl LoadWirelessStatusIndicatorSpriteGfx
- movs r0, 0
- movs r1, 0
- bl CreateWirelessStatusIndicatorSprite
- ldr r1, [r5]
- ldrb r0, [r5, 0x13]
- lsls r0, 5
- adds r1, r0
- strb r4, [r1, 0x1B]
- ldrb r0, [r5, 0x12]
- bl RedrawListMenu
- movs r0, 0x5
- strb r0, [r5, 0x19]
- ldrb r1, [r5, 0x13]
- lsls r1, 5
- ldr r0, [r5]
- adds r0, r1
- adds r0, 0x2
- bl sub_8118658
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldrb r0, [r5, 0x13]
- lsls r0, 5
- ldr r2, [r5]
- adds r2, r0
- adds r2, 0x10
- movs r0, 0x5
- b _08117CA8
-_08117C84:
- movs r0, 0x6
- strb r0, [r5, 0x19]
- ldrb r1, [r5, 0x13]
- lsls r1, 5
- ldr r0, [r5]
- adds r0, r1
- adds r0, 0x2
- bl sub_8118658
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldrb r0, [r5, 0x13]
- lsls r0, 5
- ldr r2, [r5]
- adds r2, r0
- adds r2, 0x10
- movs r0, 0x6
-_08117CA8:
- bl sub_80FA670
- movs r0, 0x8
- strb r0, [r5, 0xC]
- b _08117ECA
-_08117CB2:
- ldrb r1, [r5, 0x13]
- lsls r1, 5
- ldr r0, [r5]
- adds r0, r1
- adds r0, 0x2
- bl sub_8118658
- lsls r0, 16
- lsrs r0, 16
- ldrb r2, [r5, 0x13]
- lsls r2, 5
- ldr r1, [r5]
- adds r1, r2
- adds r1, 0x10
- bl sub_80FA6FC
- adds r4, r0, 0
- cmp r4, 0x1
- bne _08117D82
- ldrb r0, [r5, 0x19]
- cmp r0, 0x5
- bne _08117D3C
- ldr r1, [r5]
- ldrb r0, [r5, 0x13]
- lsls r0, 5
- adds r1, r0
- movs r0, 0
- strb r0, [r1, 0x1B]
- ldrb r0, [r5, 0x12]
- bl RedrawListMenu
- ldrb r0, [r5, 0x13]
- adds r0, 0x1
- strb r0, [r5, 0x13]
- ldr r4, _08117D30 @ =gStringVar1
- ldrb r1, [r5, 0x13]
- lsls r1, 5
- ldr r0, [r5]
- adds r1, r0
- subs r1, 0x10
- adds r0, r4, 0
- bl StringCopy7
- ldr r1, [r5]
- ldrb r0, [r5, 0x13]
- subs r0, 0x1
- lsls r0, 5
- adds r1, r0
- ldrb r1, [r1]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- ldr r0, _08117D34 @ =gStringVar4
- ldr r1, _08117D38 @ =gUnknown_8457554
- bl StringExpandPlaceholders
- movs r0, 0x9
- strb r0, [r5, 0xC]
- bl sub_80F8F5C
- b _08117D7C
- .align 2, 0
-_08117D30: .4byte gStringVar1
-_08117D34: .4byte gStringVar4
-_08117D38: .4byte gUnknown_8457554
-_08117D3C:
- ldrb r1, [r5, 0x13]
- lsls r1, 5
- ldr r0, [r5]
- adds r0, r1
- adds r4, r0, 0
- adds r4, 0x10
- adds r0, 0x2
- bl sub_8118658
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl sub_80FBD4C
- ldr r1, [r5]
- ldrb r0, [r5, 0x13]
- lsls r0, 5
- adds r1, r0
- ldrb r2, [r1, 0x1A]
- movs r0, 0x4
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x1A]
- ldr r0, [r5]
- bl sub_81165E8
- ldrb r0, [r5, 0x12]
- bl RedrawListMenu
- movs r0, 0x2
- strb r0, [r5, 0xC]
-_08117D7C:
- movs r0, 0
- strb r0, [r5, 0x19]
- b _08117ECA
-_08117D82:
- cmp r4, 0x2
- beq _08117D88
- b _08117ECA
-_08117D88:
- movs r0, 0
- movs r1, 0
- bl sub_80FB9E4
- strb r4, [r5, 0xC]
- b _08117ECA
-_08117D94:
- ldr r0, _08117DA0 @ =gStringVar4
- bl AddTextPrinterToWindow1
- movs r0, 0xA
- strb r0, [r5, 0xC]
- b _08117ECA
- .align 2, 0
-_08117DA0: .4byte gStringVar4
-_08117DA4:
- ldrb r0, [r5, 0xE]
- adds r0, 0x1
- strb r0, [r5, 0xE]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x78
- bhi _08117DB4
- b _08117ECA
-_08117DB4:
- movs r0, 0xB
- strb r0, [r5, 0xC]
- b _08117ECA
-_08117DBA:
- adds r0, r5, 0
- movs r1, 0x5
- movs r2, 0x6
- bl sub_8116444
- lsls r0, 24
- cmp r0, 0
- beq _08117DCC
- b _08117ECA
-_08117DCC:
- movs r0, 0xC
- strb r0, [r5, 0xC]
- b _08117ECA
-_08117DD2:
- bl sub_80F8F40
- lsls r0, 24
- cmp r0, 0
- beq _08117DE8
- movs r0, 0
- bl sub_80F8F7C
- movs r0, 0xF
- strb r0, [r5, 0xC]
- b _08117ECA
-_08117DE8:
- movs r0, 0x6
- strb r0, [r5, 0xC]
- b _08117ECA
-_08117DEE:
- bl DestroyWirelessStatusIndicatorSprite
- bl sub_80F8DC0
- ldrb r0, [r5, 0x12]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- ldrb r0, [r5, 0xF]
- bl RemoveWindow
- ldrb r0, [r5, 0x17]
- bl DestroyTask
- ldr r0, [r5, 0x8]
- bl Free
- ldr r0, [r5]
- bl Free
- ldr r0, [r5, 0x4]
- bl Free
- b _08117EB2
-_08117E26:
- adds r0, r5, 0
- adds r0, 0xD
- ldr r1, _08117E44 @ =gUnknown_84571B8
- bl MG_PrintTextOnWindow1AndWaitButton
- cmp r0, 0
- beq _08117ECA
- adds r0, r4, 0
- bl DestroyTask
- ldr r1, _08117E48 @ =gSpecialVar_Result
- movs r0, 0x5
- strh r0, [r1]
- b _08117ECA
- .align 2, 0
-_08117E44: .4byte gUnknown_84571B8
-_08117E48: .4byte gSpecialVar_Result
-_08117E4C:
- bl sub_80FB9F4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08117E64
- bl sub_80FB9F4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _08117E6A
-_08117E64:
- movs r0, 0xD
- strb r0, [r5, 0xC]
- b _08117ECA
-_08117E6A:
- ldr r0, _08117E7C @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- beq _08117ECA
- movs r0, 0x1
- bl sub_80FAFE0
- b _08117EB2
- .align 2, 0
-_08117E7C: .4byte gReceivedRemoteLinkPlayers
-_08117E80:
- ldrb r0, [r5, 0x12]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- ldrb r0, [r5, 0xF]
- bl RemoveWindow
- ldrb r0, [r5, 0x17]
- bl DestroyTask
- ldr r0, [r5, 0x8]
- bl Free
- ldr r0, [r5]
- bl Free
- ldr r0, [r5, 0x4]
- bl Free
- bl sub_800AB9C
-_08117EB2:
- ldrb r0, [r5, 0xC]
- adds r0, 0x1
- strb r0, [r5, 0xC]
- b _08117ECA
-_08117EBA:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08117ECA
- adds r0, r4, 0
- bl DestroyTask
-_08117ECA:
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8117A0C
-
- thumb_func_start MEvent_CreateTask_CardOrNewsWithFriend
-MEvent_CreateTask_CardOrNewsWithFriend: @ 8117ED4
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _08117F0C @ =sub_8117F20
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08117F10 @ =gUnknown_203B05C
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08117F14 @ =gTasks+0x8
- adds r1, r0
- str r1, [r2]
- ldr r0, _08117F18 @ =gUnknown_3002028
- str r1, [r0]
- movs r2, 0
- strb r2, [r1, 0x8]
- strb r2, [r1, 0x9]
- subs r4, 0x15
- strb r4, [r1, 0x12]
- ldr r0, _08117F1C @ =gSpecialVar_Result
- strh r2, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08117F0C: .4byte sub_8117F20
-_08117F10: .4byte gUnknown_203B05C
-_08117F14: .4byte gTasks+0x8
-_08117F18: .4byte gUnknown_3002028
-_08117F1C: .4byte gSpecialVar_Result
- thumb_func_end MEvent_CreateTask_CardOrNewsWithFriend
-
- thumb_func_start sub_8117F20
-sub_8117F20: @ 8117F20
- push {r4-r7,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, _08117F40 @ =gUnknown_203B05C
- ldr r5, [r0]
- ldrb r0, [r5, 0x8]
- cmp r0, 0xC
- bls _08117F34
- b _08118288
-_08117F34:
- lsls r0, 2
- ldr r1, _08117F44 @ =_08117F48
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08117F40: .4byte gUnknown_203B05C
-_08117F44: .4byte _08117F48
- .align 2, 0
-_08117F48:
- .4byte _08117F7C
- .4byte _08117FB0
- .4byte _08117FC0
- .4byte _08118070
- .4byte _08118150
- .4byte _0811818C
- .4byte _081181EC
- .4byte _08118248
- .4byte _081181EC
- .4byte _08118222
- .4byte _081181EC
- .4byte _0811826C
- .4byte _08118278
-_08117F7C:
- ldrb r0, [r5, 0x12]
- adds r0, 0x15
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- movs r2, 0
- bl sub_80FAF58
- bl sub_800B1F4
- bl OpenLink
- bl sub_80FBBD8
- movs r0, 0x70
- bl AllocZeroed
- str r0, [r5, 0x4]
- movs r0, 0x80
- lsls r0, 2
- bl AllocZeroed
- str r0, [r5]
- movs r0, 0x1
- strb r0, [r5, 0x8]
- b _08118288
-_08117FB0:
- ldr r0, _08117FBC @ =gUnknown_8458FE4
- bl AddTextPrinterToWindow1
- movs r0, 0x2
- strb r0, [r5, 0x8]
- b _08118288
- .align 2, 0
-_08117FBC: .4byte gUnknown_8458FE4
-_08117FC0:
- ldr r0, [r5, 0x4]
- movs r1, 0x4
- bl sub_811A650
- ldr r0, [r5]
- movs r1, 0x10
- bl sub_811A5E4
- ldr r0, [r5, 0x4]
- ldrb r1, [r5, 0x12]
- adds r1, 0x7
- bl sub_811A054
- movs r4, 0
- strb r0, [r5, 0x11]
- ldr r0, _0811805C @ =gUnknown_8456D4C
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r1, [sp, 0x4]
- bl GetMysteryGiftBaseBlock
- lsls r0, 16
- ldr r2, _08118060 @ =0x0000ffff
- ldr r1, [sp, 0x4]
- ands r1, r2
- orrs r1, r0
- str r1, [sp, 0x4]
- mov r0, sp
- bl AddWindow
- strb r0, [r5, 0xB]
- ldr r0, _08118064 @ =gUnknown_8456D54
- bl AddWindow
- strb r0, [r5, 0xD]
- ldrb r0, [r5, 0xB]
- bl MG_DrawTextBorder
- ldr r0, _08118068 @ =gMultiuseListMenuTemplate
- adds r2, r0, 0
- ldr r1, _0811806C @ =gUnknown_8456DDC
- ldm r1!, {r3,r6,r7}
- stm r2!, {r3,r6,r7}
- ldm r1!, {r3,r6,r7}
- stm r2!, {r3,r6,r7}
- ldrb r1, [r5, 0xB]
- strb r1, [r0, 0x10]
- movs r1, 0
- movs r2, 0
- bl ListMenuInit
- strb r0, [r5, 0xE]
- ldrb r0, [r5, 0xD]
- bl MG_DrawTextBorder
- ldrb r0, [r5, 0xD]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldrb r0, [r5, 0xD]
- bl PutWindowTilemap
- ldrb r0, [r5, 0xD]
- bl sub_8115924
- ldrb r0, [r5, 0xD]
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- strb r4, [r5, 0xF]
- movs r0, 0x3
- strb r0, [r5, 0x8]
- b _08118288
- .align 2, 0
-_0811805C: .4byte gUnknown_8456D4C
-_08118060: .4byte 0x0000ffff
-_08118064: .4byte gUnknown_8456D54
-_08118068: .4byte gMultiuseListMenuTemplate
-_0811806C: .4byte gUnknown_8456DDC
-_08118070:
- bl sub_8116FE4
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- beq _0811808E
- cmp r2, 0x1
- bne _08118086
- movs r0, 0x2
- bl PlaySE
-_08118086:
- ldrb r0, [r5, 0xE]
- bl RedrawListMenu
- b _08118288
-_0811808E:
- ldrb r0, [r5, 0xE]
- bl ListMenu_ProcessInput
- adds r2, r0, 0
- ldr r0, _08118128 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08118138
- movs r0, 0x1
- negs r0, r0
- cmp r2, r0
- beq _08118138
- ldr r0, [r5]
- lsls r1, r2, 5
- adds r0, r1
- ldrb r1, [r0, 0xA]
- ldrb r0, [r0, 0x1A]
- lsls r0, 30
- lsrs r0, 30
- cmp r0, 0x1
- bne _08118130
- lsrs r0, r1, 7
- cmp r0, 0
- bne _08118130
- strb r2, [r5, 0xF]
- bl LoadWirelessStatusIndicatorSpriteGfx
- movs r0, 0
- movs r1, 0
- bl CreateWirelessStatusIndicatorSprite
- ldrb r0, [r5, 0xE]
- bl RedrawListMenu
- ldr r4, _0811812C @ =gStringVar1
- ldrb r0, [r5, 0xF]
- lsls r0, 5
- ldr r1, [r5]
- adds r1, r0
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy
- ldr r1, [r5]
- ldrb r0, [r5, 0xF]
- lsls r0, 5
- adds r1, r0
- ldrb r1, [r1]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- ldrb r1, [r5, 0xF]
- lsls r1, 5
- ldr r0, [r5]
- adds r0, r1
- adds r4, r0, 0
- adds r4, 0x10
- adds r0, 0x2
- bl sub_8118658
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl sub_80FBF54
- movs r0, 0x67
- bl PlaySE
- movs r0, 0x4
- strb r0, [r5, 0x8]
- b _08118288
- .align 2, 0
-_08118128: .4byte gMain
-_0811812C: .4byte gStringVar1
-_08118130:
- movs r0, 0x7
- bl PlaySE
- b _08118288
-_08118138:
- ldr r0, _0811814C @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _08118146
- b _08118288
-_08118146:
- movs r0, 0x6
- strb r0, [r5, 0x8]
- b _08118288
- .align 2, 0
-_0811814C: .4byte gMain
-_08118150:
- ldr r0, _08118184 @ =gUnknown_8459238
- bl AddTextPrinterToWindow1
- ldr r4, _08118188 @ =gStringVar1
- ldrb r0, [r5, 0xF]
- lsls r0, 5
- ldr r1, [r5]
- adds r1, r0
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy
- ldr r1, [r5]
- ldrb r0, [r5, 0xF]
- lsls r0, 5
- adds r1, r0
- ldrb r1, [r1]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- movs r0, 0x5
- strb r0, [r5, 0x8]
- b _08118288
- .align 2, 0
-_08118184: .4byte gUnknown_8459238
-_08118188: .4byte gStringVar1
-_0811818C:
- ldr r0, _081181C4 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- beq _081181AA
- ldr r2, _081181C8 @ =gUnknown_203B058
- ldr r1, [r5]
- ldrb r0, [r5, 0xF]
- lsls r0, 5
- adds r1, r0
- ldrb r0, [r1, 0xA]
- lsls r0, 25
- lsrs r0, 25
- strb r0, [r2]
- movs r0, 0xA
- strb r0, [r5, 0x8]
-_081181AA:
- bl sub_80FB9F4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x5
- beq _081181D6
- cmp r0, 0x5
- bgt _081181CC
- cmp r0, 0x2
- bgt _08118288
- cmp r0, 0x1
- blt _08118288
- b _081181D0
- .align 2, 0
-_081181C4: .4byte gReceivedRemoteLinkPlayers
-_081181C8: .4byte gUnknown_203B058
-_081181CC:
- cmp r0, 0x6
- bne _08118288
-_081181D0:
- movs r0, 0x8
- strb r0, [r5, 0x8]
- b _08118288
-_081181D6:
- ldr r0, _081181E8 @ =gUnknown_84576AC
- bl AddTextPrinterToWindow1
- movs r0, 0
- movs r1, 0
- bl sub_80FB9E4
- b _08118288
- .align 2, 0
-_081181E8: .4byte gUnknown_84576AC
-_081181EC:
- ldrb r0, [r5, 0xE]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- ldrb r0, [r5, 0xD]
- bl RemoveWindow
- ldrb r0, [r5, 0xB]
- bl RemoveWindow
- ldrb r0, [r5, 0x11]
- bl DestroyTask
- ldr r0, [r5]
- bl Free
- ldr r0, [r5, 0x4]
- bl Free
- ldrb r0, [r5, 0x8]
- adds r0, 0x1
- strb r0, [r5, 0x8]
- b _08118288
-_08118222:
- adds r5, 0x9
- ldr r4, _08118244 @ =gUnknown_8457838
- bl sub_80FB9F4
- lsls r0, 24
- lsrs r0, 22
- adds r0, r4
- ldr r1, [r0]
- adds r0, r5, 0
- bl MG_PrintTextOnWindow1AndWaitButton
- cmp r0, 0
- beq _08118288
- bl DestroyWirelessStatusIndicatorSprite
- b _08118252
- .align 2, 0
-_08118244: .4byte gUnknown_8457838
-_08118248:
- bl DestroyWirelessStatusIndicatorSprite
- ldr r0, _08118264 @ =gUnknown_84571B8
- bl AddTextPrinterToWindow1
-_08118252:
- adds r0, r6, 0
- bl DestroyTask
- bl sub_80F8DC0
- ldr r1, _08118268 @ =gSpecialVar_Result
- movs r0, 0x5
- strh r0, [r1]
- b _08118288
- .align 2, 0
-_08118264: .4byte gUnknown_84571B8
-_08118268: .4byte gSpecialVar_Result
-_0811826C:
- ldrb r0, [r5, 0x8]
- adds r0, 0x1
- strb r0, [r5, 0x8]
- bl sub_800AB9C
- b _08118288
-_08118278:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08118288
- adds r0, r6, 0
- bl DestroyTask
-_08118288:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8117F20
-
- thumb_func_start MEvent_CreateTask_CardOrNewsOverWireless
-MEvent_CreateTask_CardOrNewsOverWireless: @ 8118290
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _081182C8 @ =sub_81182DC
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _081182CC @ =gUnknown_203B05C
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _081182D0 @ =gTasks+0x8
- adds r1, r0
- str r1, [r2]
- ldr r0, _081182D4 @ =gUnknown_3002028
- str r1, [r0]
- movs r2, 0
- strb r2, [r1, 0x8]
- strb r2, [r1, 0x9]
- subs r4, 0x15
- strb r4, [r1, 0x12]
- ldr r0, _081182D8 @ =gSpecialVar_Result
- strh r2, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081182C8: .4byte sub_81182DC
-_081182CC: .4byte gUnknown_203B05C
-_081182D0: .4byte gTasks+0x8
-_081182D4: .4byte gUnknown_3002028
-_081182D8: .4byte gSpecialVar_Result
- thumb_func_end MEvent_CreateTask_CardOrNewsOverWireless
-
- thumb_func_start sub_81182DC
-sub_81182DC: @ 81182DC
- push {r4-r6,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _081182FC @ =gUnknown_203B05C
- ldr r5, [r0]
- ldrb r0, [r5, 0x8]
- cmp r0, 0xE
- bls _081182F0
- b _08118604
-_081182F0:
- lsls r0, 2
- ldr r1, _08118300 @ =_08118304
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_081182FC: .4byte gUnknown_203B05C
-_08118300: .4byte _08118304
- .align 2, 0
-_08118304:
- .4byte _08118340
- .4byte _0811836E
- .4byte _08118380
- .4byte _08118408
- .4byte _081184C8
- .4byte _08118504
- .4byte _08118564
- .4byte _081185A8
- .4byte _08118564
- .4byte _0811859A
- .4byte _08118564
- .4byte _081185B4
- .4byte _08118564
- .4byte _081185E8
- .4byte _081185F4
-_08118340:
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl sub_80FAF58
- bl sub_800B1F4
- bl OpenLink
- bl sub_80FBBD8
- movs r0, 0x70
- bl AllocZeroed
- str r0, [r5, 0x4]
- movs r0, 0x80
- lsls r0, 2
- bl AllocZeroed
- str r0, [r5]
- movs r0, 0x1
- strb r0, [r5, 0x8]
- b _08118604
-_0811836E:
- ldr r0, _0811837C @ =gUnknown_84591DC
- bl AddTextPrinterToWindow1
- movs r0, 0x2
- strb r0, [r5, 0x8]
- b _08118604
- .align 2, 0
-_0811837C: .4byte gUnknown_84591DC
-_08118380:
- ldr r0, [r5, 0x4]
- movs r1, 0x4
- bl sub_811A650
- ldr r0, [r5]
- movs r1, 0x10
- bl sub_811A5E4
- ldr r0, [r5, 0x4]
- ldrb r1, [r5, 0x12]
- adds r1, 0x7
- bl sub_811A084
- strb r0, [r5, 0x11]
- ldrb r0, [r5, 0x13]
- cmp r0, 0
- beq _081183EC
- ldr r0, _081183F8 @ =gUnknown_8456D4C
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
- str r0, [sp]
- str r1, [sp, 0x4]
- bl GetMysteryGiftBaseBlock
- lsls r0, 16
- ldr r2, _081183FC @ =0x0000ffff
- ldr r1, [sp, 0x4]
- ands r1, r2
- orrs r1, r0
- str r1, [sp, 0x4]
- mov r0, sp
- bl AddWindow
- strb r0, [r5, 0xB]
- ldrb r0, [r5, 0xB]
- bl MG_DrawTextBorder
- ldr r0, _08118400 @ =gMultiuseListMenuTemplate
- adds r2, r0, 0
- ldr r1, _08118404 @ =gUnknown_8456DDC
- ldm r1!, {r3,r4,r6}
- stm r2!, {r3,r4,r6}
- ldm r1!, {r3,r4,r6}
- stm r2!, {r3,r4,r6}
- ldrb r1, [r5, 0xB]
- strb r1, [r0, 0x10]
- movs r1, 0
- movs r2, 0
- bl ListMenuInit
- strb r0, [r5, 0xE]
- movs r0, 0
- bl CopyBgTilemapBufferToVram
-_081183EC:
- movs r0, 0
- strb r0, [r5, 0xF]
- movs r0, 0x3
- strb r0, [r5, 0x8]
- b _08118604
- .align 2, 0
-_081183F8: .4byte gUnknown_8456D4C
-_081183FC: .4byte 0x0000ffff
-_08118400: .4byte gMultiuseListMenuTemplate
-_08118404: .4byte gUnknown_8456DDC
-_08118408:
- bl sub_8116FE4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _0811842E
- cmp r0, 0x1
- bne _0811841E
- movs r0, 0x2
- bl PlaySE
-_0811841E:
- ldrb r0, [r5, 0x13]
- cmp r0, 0
- bne _08118426
- b _08118604
-_08118426:
- ldrb r0, [r5, 0xE]
- bl RedrawListMenu
- b _08118604
-_0811842E:
- ldrb r0, [r5, 0x13]
- cmp r0, 0
- beq _0811843A
- ldrb r0, [r5, 0xE]
- bl ListMenu_ProcessInput
-_0811843A:
- ldrb r0, [r5, 0x14]
- cmp r0, 0x78
- bls _081184A8
- ldr r2, [r5]
- ldrb r1, [r2, 0x1A]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0x1
- bne _081184BC
- ldrb r1, [r2, 0xA]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _081184BC
- ldrb r1, [r5, 0x12]
- adds r1, 0x7
- adds r0, r2, 0
- bl sub_8119FB0
- cmp r0, 0
- beq _0811849C
- strb r4, [r5, 0xF]
- strb r4, [r5, 0x14]
- bl LoadWirelessStatusIndicatorSpriteGfx
- movs r0, 0
- movs r1, 0
- bl CreateWirelessStatusIndicatorSprite
- ldr r0, [r5]
- adds r4, r0, 0
- adds r4, 0x10
- adds r0, 0x2
- bl sub_8118658
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl sub_80FBF54
- movs r0, 0x67
- bl PlaySE
- movs r0, 0x4
- strb r0, [r5, 0x8]
- b _081184BC
-_0811849C:
- movs r0, 0x16
- bl PlaySE
- movs r0, 0xA
- strb r0, [r5, 0x8]
- b _081184BC
-_081184A8:
- ldr r0, _081184C4 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _081184BC
- movs r1, 0
- movs r0, 0x6
- strb r0, [r5, 0x8]
- strb r1, [r5, 0x14]
-_081184BC:
- ldrb r0, [r5, 0x14]
- adds r0, 0x1
- strb r0, [r5, 0x14]
- b _08118604
- .align 2, 0
-_081184C4: .4byte gMain
-_081184C8:
- ldr r0, _081184FC @ =gUnknown_845928C
- bl AddTextPrinterToWindow1
- ldr r4, _08118500 @ =gStringVar1
- ldrb r0, [r5, 0xF]
- lsls r0, 5
- ldr r1, [r5]
- adds r1, r0
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy
- ldr r1, [r5]
- ldrb r0, [r5, 0xF]
- lsls r0, 5
- adds r1, r0
- ldrb r1, [r1]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- movs r0, 0x5
- strb r0, [r5, 0x8]
- b _08118604
- .align 2, 0
-_081184FC: .4byte gUnknown_845928C
-_08118500: .4byte gStringVar1
-_08118504:
- ldr r0, _0811853C @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- beq _08118522
- ldr r2, _08118540 @ =gUnknown_203B058
- ldr r1, [r5]
- ldrb r0, [r5, 0xF]
- lsls r0, 5
- adds r1, r0
- ldrb r0, [r1, 0xA]
- lsls r0, 25
- lsrs r0, 25
- strb r0, [r2]
- movs r0, 0xC
- strb r0, [r5, 0x8]
-_08118522:
- bl sub_80FB9F4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x5
- beq _0811854E
- cmp r0, 0x5
- bgt _08118544
- cmp r0, 0x2
- bgt _08118604
- cmp r0, 0x1
- blt _08118604
- b _08118548
- .align 2, 0
-_0811853C: .4byte gReceivedRemoteLinkPlayers
-_08118540: .4byte gUnknown_203B058
-_08118544:
- cmp r0, 0x6
- bne _08118604
-_08118548:
- movs r0, 0x8
- strb r0, [r5, 0x8]
- b _08118604
-_0811854E:
- ldr r0, _08118560 @ =gUnknown_845777C
- bl AddTextPrinterToWindow1
- movs r0, 0
- movs r1, 0
- bl sub_80FB9E4
- b _08118604
- .align 2, 0
-_08118560: .4byte gUnknown_845777C
-_08118564:
- ldrb r0, [r5, 0x13]
- cmp r0, 0
- beq _08118580
- ldrb r0, [r5, 0xE]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- ldrb r0, [r5, 0xB]
- bl RemoveWindow
-_08118580:
- ldrb r0, [r5, 0x11]
- bl DestroyTask
- ldr r0, [r5]
- bl Free
- ldr r0, [r5, 0x4]
- bl Free
- ldrb r0, [r5, 0x8]
- adds r0, 0x1
- strb r0, [r5, 0x8]
- b _08118604
-_0811859A:
- adds r0, r5, 0
- adds r0, 0x9
- ldr r1, _081185A4 @ =gUnknown_84577BC
- b _081185C2
- .align 2, 0
-_081185A4: .4byte gUnknown_84577BC
-_081185A8:
- adds r0, r5, 0
- adds r0, 0x9
- ldr r1, _081185B0 @ =gUnknown_84571E0
- b _081185C2
- .align 2, 0
-_081185B0: .4byte gUnknown_84571E0
-_081185B4:
- adds r0, r5, 0
- adds r0, 0x9
- ldr r2, _081185E0 @ =gUnknown_845933C
- ldrb r1, [r5, 0x12]
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
-_081185C2:
- bl MG_PrintTextOnWindow1AndWaitButton
- cmp r0, 0
- beq _08118604
- bl DestroyWirelessStatusIndicatorSprite
- adds r0, r4, 0
- bl DestroyTask
- bl sub_80F8DC0
- ldr r1, _081185E4 @ =gSpecialVar_Result
- movs r0, 0x5
- strh r0, [r1]
- b _08118604
- .align 2, 0
-_081185E0: .4byte gUnknown_845933C
-_081185E4: .4byte gSpecialVar_Result
-_081185E8:
- ldrb r0, [r5, 0x8]
- adds r0, 0x1
- strb r0, [r5, 0x8]
- bl sub_800AB9C
- b _08118604
-_081185F4:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08118604
- adds r0, r4, 0
- bl DestroyTask
-_08118604:
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_81182DC
-
- thumb_func_start UnionRoomSpecial
-UnionRoomSpecial: @ 811860C
- push {r4,lr}
- bl ClearAndInitHostRFUtgtGname
- ldr r0, _08118648 @ =sub_81186E0
- movs r1, 0xA
- bl CreateTask
- ldr r4, _0811864C @ =gUnknown_203B05C
- movs r0, 0x96
- lsls r0, 2
- bl AllocZeroed
- str r0, [r4]
- ldr r1, _08118650 @ =gUnknown_300202C
- str r0, [r1]
- movs r1, 0
- strb r1, [r0, 0x14]
- strb r1, [r0, 0x16]
- strh r1, [r0, 0x10]
- strh r1, [r0, 0x12]
- ldr r0, _08118654 @ =gSpecialVar_Result
- strh r1, [r0]
- movs r0, 0xD0
- movs r1, 0x1
- bl sub_8107D38
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08118648: .4byte sub_81186E0
-_0811864C: .4byte gUnknown_203B05C
-_08118650: .4byte gUnknown_300202C
-_08118654: .4byte gSpecialVar_Result
- thumb_func_end UnionRoomSpecial
-
- thumb_func_start sub_8118658
-sub_8118658: @ 8118658
- ldrb r1, [r0, 0x1]
- lsls r1, 8
- ldrb r0, [r0]
- orrs r0, r1
- bx lr
- thumb_func_end sub_8118658
-
- thumb_func_start sub_8118664
-sub_8118664: @ 8118664
- push {lr}
- adds r3, r1, 0
- ldr r1, _08118684 @ =gUnknown_203B05C
- ldr r2, [r1]
- movs r1, 0x8
- strb r1, [r2, 0x14]
- strb r0, [r2, 0x15]
- ldr r0, _08118688 @ =gStringVar4
- cmp r3, r0
- beq _0811867E
- adds r1, r3, 0
- bl StringExpandPlaceholders
-_0811867E:
- pop {r0}
- bx r0
- .align 2, 0
-_08118684: .4byte gUnknown_203B05C
-_08118688: .4byte gStringVar4
- thumb_func_end sub_8118664
-
- thumb_func_start sub_811868C
-sub_811868C: @ 811868C
- push {lr}
- adds r2, r0, 0
- ldr r0, _081186A8 @ =gUnknown_203B05C
- ldr r1, [r0]
- movs r0, 0x1A
- strb r0, [r1, 0x14]
- ldr r0, _081186AC @ =gStringVar4
- cmp r2, r0
- beq _081186A4
- adds r1, r2, 0
- bl StringExpandPlaceholders
-_081186A4:
- pop {r0}
- bx r0
- .align 2, 0
-_081186A8: .4byte gUnknown_203B05C
-_081186AC: .4byte gStringVar4
- thumb_func_end sub_811868C
-
- thumb_func_start sub_81186B0
-sub_81186B0: @ 81186B0
- push {lr}
- ldr r3, _081186C4 @ =gDecompressionBuffer + 0x3F00
- ldr r1, [r0]
- movs r2, 0x80
- lsls r2, 1
- adds r0, r3, 0
- bl memcpy
- pop {r0}
- bx r0
- .align 2, 0
-_081186C4: .4byte gDecompressionBuffer + 0x3F00
- thumb_func_end sub_81186B0
-
- thumb_func_start sub_81186C8
-sub_81186C8: @ 81186C8
- push {lr}
- ldr r0, [r0]
- ldr r1, _081186DC @ =gDecompressionBuffer + 0x3F00
- movs r2, 0x80
- lsls r2, 1
- bl memcpy
- pop {r0}
- bx r0
- .align 2, 0
-_081186DC: .4byte gDecompressionBuffer + 0x3F00
- thumb_func_end sub_81186C8
-
- thumb_func_start sub_81186E0
-sub_81186E0: @ 81186E0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r4, r0, 24
- movs r5, 0
- ldr r0, _08118710 @ =gUnknown_203B05C
- ldr r6, [r0]
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, _08118714 @ =gTasks+0x8
- adds r7, r0, r1
- ldrb r0, [r6, 0x14]
- cmp r0, 0x38
- bls _08118706
- bl _081198DC
-_08118706:
- lsls r0, 2
- ldr r1, _08118718 @ =_0811871C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08118710: .4byte gUnknown_203B05C
-_08118714: .4byte gTasks+0x8
-_08118718: .4byte _0811871C
- .align 2, 0
-_0811871C:
- .4byte _08118800
- .4byte _08118858
- .4byte _0811887C
- .4byte _081188CC
- .4byte _081189AA
- .4byte _08118E60
- .4byte _08118C58
- .4byte _08118E60
- .4byte _081198C8
- .4byte _081191D4
- .4byte _081192E0
- .4byte _081190B0
- .4byte _081190CA
- .4byte _08119330
- .4byte _08119354
- .4byte _0811935C
- .4byte _0811936C
- .4byte _0811939A
- .4byte _081193AE
- .4byte _08118F36
- .4byte _08118FBC
- .4byte _08118FDA
- .4byte _0811904E
- .4byte _08118ADE
- .4byte _08118B04
- .4byte _08118B7C
- .4byte _0811989C
- .4byte _08118D50
- .4byte _08118D38
- .4byte _08118DD4
- .4byte _08118C2E
- .4byte _08118DAA
- .4byte _08118DA0
- .4byte _08119164
- .4byte _08119184
- .4byte _081191C4
- .4byte _081192E8
- .4byte _08119324
- .4byte _08118BF8
- .4byte _0811910C
- .4byte _08118E98
- .4byte _08118EC8
- .4byte _081193D8
- .4byte _08119468
- .4byte _081195B8
- .4byte _08119620
- .4byte _0811963C
- .4byte _08119484
- .4byte _08119644
- .4byte _08119784
- .4byte _081197B8
- .4byte _08119840
- .4byte _0811953C
- .4byte _081194F0
- .4byte _08119504
- .4byte _0811959C
- .4byte _081195EC
-_08118800:
- movs r0, 0x70
- bl AllocZeroed
- str r0, [r6, 0x4]
- movs r0, 0x70
- bl AllocZeroed
- str r0, [r6, 0xC]
- movs r0, 0x80
- lsls r0, 1
- bl AllocZeroed
- str r0, [r6]
- movs r0, 0x20
- bl AllocZeroed
- str r0, [r6, 0x8]
- ldr r0, [r6]
- movs r1, 0x8
- bl sub_811A5E4
- ldr r1, _08118854 @ =gUnknown_203B058
- movs r0, 0x40
- strb r0, [r1]
- ldr r0, [r6, 0xC]
- ldr r1, [r6, 0x4]
- movs r2, 0x9
- bl sub_8119E84
- adds r1, r6, 0
- adds r1, 0x20
- strb r0, [r1]
- adds r0, r6, 0
- adds r0, 0x8C
- bl sub_811B754
- bl sub_811BB68
- movs r0, 0x1
- bl _081198DA
- .align 2, 0
-_08118854: .4byte gUnknown_203B058
-_08118858:
- adds r0, r6, 0
- adds r0, 0x21
- movs r2, 0
- ldrsh r1, [r7, r2]
- bl sub_811BAAC
- ldrh r0, [r7]
- adds r0, 0x1
- strh r0, [r7]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x8
- beq _08118876
- bl _081198DC
-_08118876:
- movs r0, 0x2
- bl _081198DA
-_0811887C:
- movs r0, 0x40
- movs r1, 0
- movs r2, 0
- bl sub_80FAF58
- ldr r2, _081188C4 @ =gUnknown_203B06C
- ldrh r0, [r2, 0x2]
- ldrh r1, [r2, 0xA]
- ldrh r2, [r2, 0xC]
- bl sub_80FAFA0
- bl sub_800B1F4
- bl OpenLink
- bl sub_80FBC00
- ldr r0, [r6, 0x8]
- movs r1, 0x1
- bl sub_811A5E4
- ldr r0, [r6, 0x4]
- movs r1, 0x4
- bl sub_811A650
- ldr r0, [r6, 0xC]
- movs r1, 0x4
- bl sub_811A650
- ldr r1, _081188C8 @ =gSpecialVar_Result
- movs r0, 0
- strh r0, [r1]
- movs r0, 0x3
- bl _081198DA
- .align 2, 0
-_081188C4: .4byte gUnknown_203B06C
-_081188C8: .4byte gSpecialVar_Result
-_081188CC:
- bl GetPartyMenuType
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8
- beq _081188E4
- bl GetPartyMenuType
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x9
- bne _081189A4
-_081188E4:
- ldr r4, _08118900 @ =gUnknown_203B06C
- ldrh r0, [r4]
- cmp r0, 0
- beq _081189A4
- bl GetCursorSelectionMonId
- lsls r0, 24
- lsrs r5, r0, 24
- ldrh r0, [r4]
- cmp r0, 0x1
- beq _08118904
- cmp r0, 0x2
- beq _08118954
- b _08118992
- .align 2, 0
-_08118900: .4byte gUnknown_203B06C
-_08118904:
- movs r0, 0x54
- movs r1, 0
- movs r2, 0x1
- bl sub_80FB008
- cmp r5, 0x5
- bls _08118930
- adds r0, r4, 0
- bl sub_811B148
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl sub_80FAFA0
- ldr r0, _0811892C @ =gUnknown_8458D54
- bl sub_811868C
- b _08118992
- .align 2, 0
-_0811892C: .4byte gUnknown_8458D54
-_08118930:
- bl GetCursorSelectionMonId
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, 0
- bl sub_811B16C
- cmp r0, 0
- bne _08118950
- ldr r1, _0811894C @ =gUnknown_8458CD4
- movs r0, 0x34
- bl sub_8118664
- b _08118992
- .align 2, 0
-_0811894C: .4byte gUnknown_8458CD4
-_08118950:
- movs r0, 0x37
- b _08118990
-_08118954:
- adds r0, r6, 0
- bl sub_81186C8
- ldrb r0, [r4, 0x8]
- strh r0, [r7, 0x2]
- cmp r5, 0x5
- bls _08118970
- ldr r0, _0811896C @ =gUnknown_8458D9C
- bl sub_811868C
- b _08118992
- .align 2, 0
-_0811896C: .4byte gUnknown_8458D9C
-_08118970:
- movs r0, 0x54
- movs r1, 0
- movs r2, 0x1
- bl sub_80FB008
- ldr r1, _0811899C @ =gUnknown_203B058
- movs r0, 0x44
- strb r0, [r1]
- bl GetCursorSelectionMonId
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, 0
- bl sub_811B1B4
- movs r0, 0x33
-_08118990:
- strb r0, [r6, 0x14]
-_08118992:
- ldr r1, _081189A0 @ =gUnknown_203B06C
- movs r0, 0
- strh r0, [r1]
- bl _081198DC
- .align 2, 0
-_0811899C: .4byte gUnknown_203B058
-_081189A0: .4byte gUnknown_203B06C
-_081189A4:
- movs r0, 0x4
- bl _081198DA
-_081189AA:
- ldr r4, _081189D8 @ =gSpecialVar_Result
- ldrh r0, [r4]
- cmp r0, 0
- beq _08118A0E
- cmp r0, 0x9
- bne _081189E4
- movs r0, 0x54
- movs r1, 0
- movs r2, 0x1
- bl sub_80FB008
- movs r0, 0x2
- bl PlaySE
- ldr r0, _081189DC @ =gStringVar1
- ldr r1, _081189E0 @ =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- movs r1, 0
- movs r0, 0x2A
- b _08118A06
- .align 2, 0
-_081189D8: .4byte gSpecialVar_Result
-_081189DC: .4byte gStringVar1
-_081189E0: .4byte gSaveBlock2Ptr
-_081189E4:
- cmp r0, 0xB
- bne _081189F8
- movs r0, 0x54
- movs r1, 0
- movs r2, 0x1
- bl sub_80FB008
- movs r1, 0
- movs r0, 0x17
- b _08118A06
-_081189F8:
- movs r0, 0
- strh r0, [r7]
- ldrh r0, [r4]
- subs r0, 0x1
- strh r0, [r7, 0x2]
- movs r1, 0
- movs r0, 0x18
-_08118A06:
- strb r0, [r6, 0x14]
- strh r1, [r4]
- bl _081198DC
-_08118A0E:
- bl ScriptContext2_IsEnabled
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08118A1E
- bl _081198DC
-_08118A1E:
- ldr r0, _08118A4C @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08118A84
- ldr r0, [r6]
- adds r2, r7, 0x2
- adds r3, r6, 0
- adds r3, 0x21
- adds r1, r7, 0
- bl sub_811BF00
- cmp r0, 0
- beq _08118A50
- movs r0, 0x5
- bl PlaySE
- bl sub_811B298
- movs r0, 0x18
- bl _081198DA
- .align 2, 0
-_08118A4C: .4byte gMain
-_08118A50:
- bl sub_811A9B8
- cmp r0, 0
- beq _08118A84
- movs r0, 0x54
- movs r1, 0
- movs r2, 0x1
- bl sub_80FB008
- movs r0, 0x2
- bl PlaySE
- bl sub_811B298
- ldr r0, _08118A7C @ =gStringVar1
- ldr r1, _08118A80 @ =gSaveBlock2Ptr
- ldr r1, [r1]
- bl StringCopy
- movs r0, 0x2D
- bl _081198DA
- .align 2, 0
-_08118A7C: .4byte gStringVar1
-_08118A80: .4byte gSaveBlock2Ptr
-_08118A84:
- bl sub_8119B94
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _08118AA6
- cmp r0, 0x2
- bgt _08118A9A
- cmp r0, 0x1
- beq _08118AA0
- b _08118AD4
-_08118A9A:
- cmp r0, 0x4
- beq _08118AAE
- b _08118AD4
-_08118AA0:
- movs r0, 0x37
- bl PlaySE
-_08118AA6:
- adds r0, r6, 0
- bl sub_811BECC
- b _08118AD4
-_08118AAE:
- movs r0, 0xB
- strb r0, [r6, 0x14]
- bl sub_811B298
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl sub_80FAFA0
- adds r0, r6, 0
- bl sub_811B2D8
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x53
- movs r2, 0
- bl sub_80FB008
-_08118AD4:
- adds r0, r6, 0
- bl sub_811BEDC
- bl _081198DC
-_08118ADE:
- ldr r0, _08118B00 @ =Task_StartMenuHandleInput
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- beq _08118AEE
- bl _081198DC
-_08118AEE:
- movs r0, 0x40
- movs r1, 0
- movs r2, 0
- bl sub_80FB008
- movs r0, 0x4
- bl _081198DA
- .align 2, 0
-_08118B00: .4byte Task_StartMenuHandleInput
-_08118B04:
- bl sub_811A0E0
- movs r3, 0x2
- ldrsh r0, [r7, r3]
- ldr r1, [r6]
- bl sub_811ADC4
- adds r4, r0, 0
- movs r0, 0x54
- movs r1, 0
- movs r2, 0x1
- bl sub_80FB008
- ldr r0, [r6]
- ldrb r1, [r7]
- ldrb r2, [r7, 0x2]
- adds r3, r4, 0
- bl sub_811AA5C
- cmp r0, 0x1
- beq _08118B48
- cmp r0, 0x1
- bgt _08118B3A
- cmp r0, 0
- beq _08118B42
- bl _081198DC
-_08118B3A:
- cmp r0, 0x2
- beq _08118B6C
- bl _081198DC
-_08118B42:
- movs r0, 0x1A
- bl _081198DA
-_08118B48:
- movs r1, 0x2
- ldrsh r0, [r7, r1]
- lsls r0, 5
- ldr r1, [r6]
- adds r1, r0
- adds r0, r1, 0
- adds r0, 0x10
- ldr r2, _08118B68 @ =gUnknown_203B058
- ldrb r2, [r2]
- bl sub_80FC114
- strh r5, [r6, 0x12]
- movs r0, 0x19
- bl _081198DA
- .align 2, 0
-_08118B68: .4byte gUnknown_203B058
-_08118B6C:
- ldr r1, _08118B78 @ =gStringVar4
- movs r0, 0x13
- bl sub_8118664
- bl _081198DC
- .align 2, 0
-_08118B78: .4byte gStringVar4
-_08118B7C:
- bl sub_811A0E0
- bl sub_80FB9F4
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x1
- blt _08118BC2
- cmp r4, 0x2
- ble _08118B9E
- cmp r4, 0x4
- bne _08118BC2
- movs r0, 0x1
- bl sub_811B258
- strb r4, [r6, 0x14]
- b _08118BC2
-_08118B9E:
- bl sub_80FBB0C
- cmp r0, 0x1
- bne _08118BB4
- ldr r0, _08118BB0 @ =gUnknown_8457F90
- bl sub_811868C
- b _08118BBC
- .align 2, 0
-_08118BB0: .4byte gUnknown_8457F90
-_08118BB4:
- ldr r1, _08118BE4 @ =gUnknown_8457F90
- movs r0, 0x1E
- bl sub_8118664
-_08118BBC:
- ldr r1, _08118BE8 @ =gUnknown_203B058
- movs r0, 0x40
- strb r0, [r1]
-_08118BC2:
- ldr r0, _08118BEC @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _08118BCE
- bl _081198DC
-_08118BCE:
- ldr r0, _08118BF0 @ =gBlockSendBuffer
- movs r1, 0x1
- bl sub_8117594
- ldr r0, _08118BF4 @ =sub_8117280
- movs r1, 0x5
- bl CreateTask
- movs r0, 0x26
- bl _081198DA
- .align 2, 0
-_08118BE4: .4byte gUnknown_8457F90
-_08118BE8: .4byte gUnknown_203B058
-_08118BEC: .4byte gReceivedRemoteLinkPlayers
-_08118BF0: .4byte gBlockSendBuffer
-_08118BF4: .4byte sub_8117280
-_08118BF8:
- ldr r0, _08118C1C @ =sub_8117280
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- beq _08118C08
- bl _081198DC
-_08118C08:
- ldr r0, _08118C20 @ =gUnknown_203B058
- ldrb r0, [r0]
- cmp r0, 0x44
- bne _08118C28
- ldr r1, _08118C24 @ =gUnknown_84578BC
- movs r0, 0x1F
- bl sub_8118664
- bl _081198DC
- .align 2, 0
-_08118C1C: .4byte sub_8117280
-_08118C20: .4byte gUnknown_203B058
-_08118C24: .4byte gUnknown_84578BC
-_08118C28:
- movs r0, 0x5
- bl _081198DA
-_08118C2E:
- ldr r0, _08118C54 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- beq _08118C3A
- bl _081198DC
-_08118C3A:
- movs r0, 0
- bl sub_811B258
- movs r2, 0
- ldrsh r0, [r7, r2]
- movs r3, 0x2
- ldrsh r1, [r7, r3]
- ldr r2, [r6]
- bl sub_811C028
- movs r0, 0x2
- bl _081198DA
- .align 2, 0
-_08118C54: .4byte gReceivedRemoteLinkPlayers
-_08118C58:
- adds r0, r6, 0
- adds r0, 0x16
- adds r1, r6, 0
- adds r1, 0x1B
- adds r2, r6, 0
- adds r2, 0x1C
- ldr r3, _08118C8C @ =gUnknown_8456DF4
- ldr r4, _08118C90 @ =gUnknown_8456E1C
- str r4, [sp]
- bl sub_811A218
- adds r5, r0, 0
- movs r0, 0x1
- negs r0, r0
- cmp r5, r0
- bne _08118C7C
- bl _081198DC
-_08118C7C:
- ldr r0, _08118C94 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _08118C98
- movs r0, 0x1C
- bl _081198DA
- .align 2, 0
-_08118C8C: .4byte gUnknown_8456DF4
-_08118C90: .4byte gUnknown_8456E1C
-_08118C94: .4byte gReceivedRemoteLinkPlayers
-_08118C98:
- adds r1, r6, 0
- adds r1, 0x84
- movs r0, 0
- strh r0, [r1]
- movs r2, 0x2
- ldrsh r0, [r7, r2]
- ldr r1, [r6]
- bl sub_811ADC4
- movs r0, 0x2
- negs r0, r0
- cmp r5, r0
- beq _08118CB6
- cmp r5, 0x40
- bne _08118CE8
-_08118CB6:
- adds r0, r6, 0
- adds r0, 0x4C
- movs r1, 0x40
- strh r1, [r0]
- bl sub_80F9E2C
- ldr r0, _08118CDC @ =gStringVar4
- ldr r2, _08118CE0 @ =gUnknown_845842C
- ldr r1, _08118CE4 @ =gLinkPlayers
- ldrb r1, [r1, 0x13]
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- bl StringCopy
- movs r0, 0x20
- bl _081198DA
- .align 2, 0
-_08118CDC: .4byte gStringVar4
-_08118CE0: .4byte gUnknown_845842C
-_08118CE4: .4byte gLinkPlayers
-_08118CE8:
- ldr r0, _08118D10 @ =gUnknown_203B058
- strb r5, [r0]
- ldr r1, _08118D14 @ =gUnknown_203B059
- lsrs r0, r5, 8
- strb r0, [r1]
- lsls r0, r5, 24
- lsrs r0, 24
- cmp r0, 0x41
- bne _08118D1C
- bl sub_811B0F0
- cmp r0, 0
- bne _08118D1C
- ldr r1, _08118D18 @ =gUnknown_845847C
- movs r0, 0x5
- bl sub_8118664
- bl _081198DC
- .align 2, 0
-_08118D10: .4byte gUnknown_203B058
-_08118D14: .4byte gUnknown_203B059
-_08118D18: .4byte gUnknown_845847C
-_08118D1C:
- ldr r0, _08118D34 @ =gUnknown_203B058
- ldrb r0, [r0]
- movs r1, 0x40
- orrs r1, r0
- adds r0, r6, 0
- adds r0, 0x4C
- strh r1, [r0]
- bl sub_80F9E2C
- movs r0, 0x1B
- bl _081198DA
- .align 2, 0
-_08118D34: .4byte gUnknown_203B058
-_08118D38:
- ldr r0, _08118D48 @ =gStringVar4
- ldr r1, _08118D4C @ =gUnknown_8458434
- bl StringCopy
- movs r0, 0x24
- bl _081198DA
- .align 2, 0
-_08118D48: .4byte gStringVar4
-_08118D4C: .4byte gUnknown_8458434
-_08118D50:
- adds r0, r6, 0
- bl sub_811B0A4
- movs r3, 0x2
- ldrsh r0, [r7, r3]
- ldr r1, [r6]
- bl sub_811ADC4
- adds r4, r0, 0
- adds r0, r6, 0
- adds r0, 0x4C
- ldrh r1, [r0]
- movs r0, 0x3F
- ands r0, r1
- bl sub_811A9FC
- adds r5, r0, 0
- adds r0, r6, 0
- adds r0, 0x16
- ldr r3, _08118D9C @ =gUnknown_84580F4
- lsls r1, r5, 2
- lsls r2, r4, 4
- adds r1, r2
- adds r1, r3
- ldr r1, [r1]
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _08118D90
- bl _081198DC
-_08118D90:
- movs r0, 0
- strh r0, [r7, 0x6]
- movs r0, 0x1D
- bl _081198DA
- .align 2, 0
-_08118D9C: .4byte gUnknown_84580F4
-_08118DA0:
- bl sub_800AAC0
- movs r0, 0x24
- bl _081198DA
-_08118DAA:
- adds r0, r6, 0
- adds r0, 0x4C
- movs r1, 0x44
- strh r1, [r0]
- ldr r2, _08118DD0 @ =gUnknown_203B06C
- ldrh r1, [r2, 0xE]
- adds r3, r6, 0
- adds r3, 0x4E
- strh r1, [r3]
- ldrh r2, [r2, 0x10]
- adds r1, r6, 0
- adds r1, 0x50
- strh r2, [r1]
- bl sub_80F9E2C
- movs r0, 0x1D
- bl _081198DA
- .align 2, 0
-_08118DD0: .4byte gUnknown_203B06C
-_08118DD4:
- ldr r0, _08118DEC @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _08118DF8
- ldr r0, _08118DF0 @ =gStringVar4
- ldr r1, _08118DF4 @ =gUnknown_8458434
- bl StringCopy
- movs r0, 0x1C
- bl _081198DA
- .align 2, 0
-_08118DEC: .4byte gReceivedRemoteLinkPlayers
-_08118DF0: .4byte gStringVar4
-_08118DF4: .4byte gUnknown_8458434
-_08118DF8:
- adds r0, r6, 0
- bl sub_811B0A4
- adds r0, r6, 0
- adds r0, 0x84
- ldrh r0, [r0]
- cmp r0, 0x51
- bne _08118E2E
- ldr r0, _08118E20 @ =gUnknown_203B058
- ldrb r0, [r0]
- cmp r0, 0x8
- bne _08118E28
- ldr r0, _08118E24 @ =gStringVar4
- adds r1, r6, 0
- movs r2, 0
- bl sub_811B31C
- movs r0, 0x28
- bl _081198DA
- .align 2, 0
-_08118E20: .4byte gUnknown_203B058
-_08118E24: .4byte gStringVar4
-_08118E28:
- movs r0, 0xD
- bl _081198DA
-_08118E2E:
- cmp r0, 0x52
- beq _08118E36
- bl _081198DC
-_08118E36:
- movs r5, 0
- movs r0, 0x20
- strb r0, [r6, 0x14]
- ldr r0, _08118E54 @ =gStringVar4
- ldr r4, _08118E58 @ =gUnknown_203B058
- ldrb r2, [r4]
- movs r1, 0x40
- orrs r1, r2
- ldr r2, _08118E5C @ =gLinkPlayers
- ldrb r2, [r2, 0x13]
- bl sub_811AE68
- strb r5, [r4]
- bl _081198DC
- .align 2, 0
-_08118E54: .4byte gStringVar4
-_08118E58: .4byte gUnknown_203B058
-_08118E5C: .4byte gLinkPlayers
-_08118E60:
- movs r0, 0x2
- ldrsh r1, [r7, r0]
- lsls r1, 5
- ldr r0, [r6]
- adds r0, r1
- bl sub_811AA24
- adds r5, r0, 0
- movs r1, 0x2
- ldrsh r0, [r7, r1]
- ldr r1, [r6]
- bl sub_811ADC4
- adds r4, r0, 0
- ldr r2, _08118E94 @ =gUnknown_8457B04
- lsls r0, r4, 2
- lsls r1, r5, 3
- adds r0, r1
- adds r0, r2
- ldr r1, [r0]
- movs r0, 0x6
- bl sub_8118664
- bl _081198DC
- .align 2, 0
-_08118E94: .4byte gUnknown_8457B04
-_08118E98:
- adds r0, r6, 0
- adds r0, 0x16
- ldr r1, _08118EC4 @ =gStringVar4
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _08118EAC
- bl _081198DC
-_08118EAC:
- movs r4, 0
- movs r0, 0x29
- strb r0, [r6, 0x14]
- bl sub_800AB9C
- adds r0, r6, 0
- adds r0, 0x84
- strh r4, [r0]
- adds r0, 0x2
- strh r4, [r0]
- bl _081198DC
- .align 2, 0
-_08118EC4: .4byte gStringVar4
-_08118EC8:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- bne _08118ED6
- bl _081198DC
-_08118ED6:
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _08118F30
- ldr r5, _08118F20 @ =gStringVar1
- bl GetMultiplayerId
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- ldr r4, _08118F24 @ =gLinkPlayers + 8
- adds r1, r4
- adds r0, r5, 0
- bl StringCopy
- ldrh r0, [r4, 0x18]
- adds r4, 0x1C
- adds r1, r4, 0
- bl sub_80FD338
- adds r5, r0, 0
- ldr r0, _08118F28 @ =gStringVar4
- ldr r2, _08118F2C @ =gUnknown_8457C20
- lsls r1, r5, 2
- adds r1, r2
- ldr r1, [r1]
- bl StringExpandPlaceholders
- movs r0, 0x21
- bl _081198DA
- .align 2, 0
-_08118F20: .4byte gStringVar1
-_08118F24: .4byte gLinkPlayers + 8
-_08118F28: .4byte gStringVar4
-_08118F2C: .4byte gUnknown_8457C20
-_08118F30:
- movs r0, 0x7
- bl _081198DA
-_08118F36:
- adds r0, r6, 0
- adds r0, 0x16
- movs r1, 0
- bl sub_811A14C
- lsls r0, 24
- asrs r5, r0, 24
- cmp r5, 0
- beq _08118F60
- cmp r5, 0
- bgt _08118F58
- movs r0, 0x1
- negs r0, r0
- cmp r5, r0
- beq _08118F9C
- bl _081198DC
-_08118F58:
- cmp r5, 0x1
- beq _08118F9C
- bl _081198DC
-_08118F60:
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- ldr r4, _08118F98 @ =gUnknown_203B058
- movs r0, 0x45
- strb r0, [r4]
- movs r0, 0x45
- movs r1, 0
- movs r2, 0x1
- bl sub_80FB008
- movs r2, 0x2
- ldrsh r0, [r7, r2]
- lsls r0, 5
- ldr r1, [r6]
- adds r1, r0
- adds r0, r1, 0
- adds r0, 0x10
- ldrb r2, [r4]
- bl sub_80FC114
- ldrh r0, [r7, 0x2]
- strh r0, [r6, 0x12]
- movs r0, 0x14
- strb r0, [r6, 0x14]
- strh r5, [r7, 0x6]
- bl _081198DC
- .align 2, 0
-_08118F98: .4byte gUnknown_203B058
-_08118F9C:
- movs r3, 0x2
- ldrsh r0, [r7, r3]
- ldr r1, [r6]
- bl sub_811ADC4
- adds r4, r0, 0
- ldr r1, _08118FB8 @ =gUnknown_8458548
- lsls r0, r4, 2
- adds r0, r1
- ldr r0, [r0]
- bl sub_811868C
- bl _081198DC
- .align 2, 0
-_08118FB8: .4byte gUnknown_8458548
-_08118FBC:
- ldrh r0, [r7, 0x4]
- adds r0, 0x1
- strh r0, [r7, 0x4]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x3C
- bgt _08118FCE
- bl _081198DC
-_08118FCE:
- movs r1, 0
- movs r0, 0x15
- strb r0, [r6, 0x14]
- strh r1, [r7, 0x4]
- bl _081198DC
-_08118FDA:
- bl sub_80FB9F4
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x3
- beq _08119040
- cmp r4, 0x3
- ble _08118FF8
- cmp r4, 0x4
- bne _08119044
- movs r0, 0x1
- bl sub_811B258
- strb r4, [r6, 0x14]
- b _08119044
-_08118FF8:
- cmp r4, 0x1
- blt _08119044
- movs r1, 0x2
- ldrsh r0, [r7, r1]
- ldr r1, [r6]
- bl sub_811ADC4
- adds r4, r0, 0
- movs r0, 0x54
- movs r1, 0
- movs r2, 0x1
- bl sub_80FB008
- bl sub_80FBB0C
- cmp r0, 0x1
- bne _0811902C
- ldr r0, _08119028 @ =gUnknown_84585E8
- lsls r1, r4, 2
- adds r1, r0
- ldr r0, [r1]
- bl sub_811868C
- b _08119044
- .align 2, 0
-_08119028: .4byte gUnknown_84585E8
-_0811902C:
- ldr r0, _0811903C @ =gUnknown_84585E8
- lsls r1, r4, 2
- adds r1, r0
- ldr r1, [r1]
- movs r0, 0x1E
- bl sub_8118664
- b _08119044
- .align 2, 0
-_0811903C: .4byte gUnknown_84585E8
-_08119040:
- movs r0, 0x16
- strb r0, [r6, 0x14]
-_08119044:
- ldrh r0, [r7, 0x6]
- adds r0, 0x1
- strh r0, [r7, 0x6]
- bl _081198DC
-_0811904E:
- bl sub_80FBA00
- cmp r0, 0
- beq _08119096
- movs r2, 0x2
- ldrsh r0, [r7, r2]
- ldr r1, [r6]
- bl sub_811ADC4
- adds r4, r0, 0
- movs r0, 0x54
- movs r1, 0
- movs r2, 0x1
- bl sub_80FB008
- bl sub_80FBB0C
- cmp r0, 0x1
- bne _08119088
- ldr r0, _08119084 @ =gUnknown_84585E8
- lsls r1, r4, 2
- adds r1, r0
- ldr r0, [r1]
- bl sub_811868C
- b _08119096
- .align 2, 0
-_08119084: .4byte gUnknown_84585E8
-_08119088:
- ldr r0, _081190A8 @ =gUnknown_84585E8
- lsls r1, r4, 2
- adds r1, r0
- ldr r1, [r1]
- movs r0, 0x1E
- bl sub_8118664
-_08119096:
- ldr r0, _081190AC @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _081190A2
- bl _081198DC
-_081190A2:
- movs r0, 0x10
- bl _081198DA
- .align 2, 0
-_081190A8: .4byte gUnknown_84585E8
-_081190AC: .4byte gReceivedRemoteLinkPlayers
-_081190B0:
- movs r0, 0x42
- bl PlaySE
- bl sub_80F8FA0
- movs r0, 0
- movs r1, 0xC
- strb r1, [r6, 0x14]
- adds r1, r6, 0
- adds r1, 0x86
- strh r0, [r1]
- bl _081198DC
-_081190CA:
- bl sub_80FBA00
- cmp r0, 0
- beq _081190DE
- movs r0, 0
- bl sub_811B258
- movs r0, 0x2
- bl _081198DA
-_081190DE:
- ldr r0, _08119100 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _081190EA
- bl _081198DC
-_081190EA:
- ldr r0, _08119104 @ =gBlockSendBuffer
- movs r1, 0x1
- bl sub_8117594
- ldr r0, _08119108 @ =sub_8117280
- movs r1, 0x5
- bl CreateTask
- movs r0, 0x27
- bl _081198DA
- .align 2, 0
-_08119100: .4byte gReceivedRemoteLinkPlayers
-_08119104: .4byte gBlockSendBuffer
-_08119108: .4byte sub_8117280
-_0811910C:
- adds r0, r6, 0
- bl sub_8119904
- ldr r0, _08119150 @ =sub_8117280
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- beq _08119122
- bl _081198DC
-_08119122:
- movs r0, 0x21
- strb r0, [r6, 0x14]
- ldr r0, _08119154 @ =gStringVar1
- ldr r4, _08119158 @ =gLinkPlayers + 0x24
- adds r1, r4, 0
- bl StringCopy
- adds r0, r4, 0
- subs r0, 0x24
- ldrh r0, [r0, 0x20]
- adds r1, r4, 0
- bl sub_80FD338
- adds r5, r0, 0
- ldr r0, _0811915C @ =gStringVar4
- ldr r2, _08119160 @ =gUnknown_8457BCC
- lsls r1, r5, 2
- adds r1, r2
- ldr r1, [r1]
- bl StringExpandPlaceholders
- b _081198DC
- .align 2, 0
-_08119150: .4byte sub_8117280
-_08119154: .4byte gStringVar1
-_08119158: .4byte gLinkPlayers + 0x24
-_0811915C: .4byte gStringVar4
-_08119160: .4byte gUnknown_8457BCC
-_08119164:
- adds r0, r6, 0
- bl sub_8119904
- adds r0, r6, 0
- adds r0, 0x16
- ldr r1, _08119180 @ =gStringVar4
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _0811917C
- b _081198DC
-_0811917C:
- movs r0, 0x22
- b _081198DA
- .align 2, 0
-_08119180: .4byte gStringVar4
-_08119184:
- adds r0, r6, 0
- bl sub_8119904
- adds r0, r6, 0
- bl sub_8119944
- cmp r0, 0
- bne _08119196
- b _081198DC
-_08119196:
- ldr r0, _081191B8 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _081191A4
- b _081198DC
-_081191A4:
- movs r0, 0x1
- bl sub_80FBD6C
- ldr r0, _081191BC @ =gStringVar4
- ldr r1, _081191C0 @ =gUnknown_8457E60
- bl StringCopy
- movs r0, 0x24
- b _081198DA
- .align 2, 0
-_081191B8: .4byte gMain
-_081191BC: .4byte gStringVar4
-_081191C0: .4byte gUnknown_8457E60
-_081191C4:
- ldr r1, _081191D0 @ =gStringVar4
- movs r0, 0x9
- bl sub_8118664
- b _081198DC
- .align 2, 0
-_081191D0: .4byte gStringVar4
-_081191D4:
- adds r0, r6, 0
- adds r0, 0x16
- movs r1, 0
- bl sub_811A14C
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _081191FA
- cmp r1, 0
- bgt _081191F4
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _081192BA
- b _081198DC
-_081191F4:
- cmp r1, 0x1
- beq _081192BA
- b _081198DC
-_081191FA:
- adds r0, r6, 0
- adds r0, 0x4C
- movs r1, 0x51
- strh r1, [r0]
- ldr r1, _08119228 @ =gUnknown_203B058
- ldrb r1, [r1]
- adds r5, r0, 0
- cmp r1, 0x45
- bne _0811922C
- movs r4, 0x40
- orrs r4, r1
- movs r0, 0x1
- bl sub_811B2A8
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- movs r2, 0
- bl sub_80FB008
- b _0811924A
- .align 2, 0
-_08119228: .4byte gUnknown_203B058
-_0811922C:
- movs r0, 0x40
- adds r4, r1, 0
- orrs r4, r0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- bl sub_811B2A8
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- movs r2, 0x1
- bl sub_80FB008
-_0811924A:
- ldr r1, [r6, 0x8]
- movs r0, 0
- strb r0, [r1, 0x1B]
- strh r0, [r7, 0x6]
- ldr r0, _0811927C @ =gUnknown_203B058
- ldrb r0, [r0]
- cmp r0, 0x41
- bne _08119292
- bl sub_811B0F0
- cmp r0, 0
- bne _08119288
- movs r0, 0x52
- strh r0, [r5]
- adds r0, r5, 0
- bl sub_80F9E2C
- movs r0, 0xA
- strb r0, [r6, 0x14]
- ldr r0, _08119280 @ =gStringVar4
- ldr r1, _08119284 @ =gUnknown_84584C0
- bl StringCopy
- b _081198DC
- .align 2, 0
-_0811927C: .4byte gUnknown_203B058
-_08119280: .4byte gStringVar4
-_08119284: .4byte gUnknown_84584C0
-_08119288:
- adds r0, r5, 0
- bl sub_80F9E2C
- movs r0, 0xD
- b _081198DA
-_08119292:
- cmp r0, 0x48
- bne _081192B0
- adds r0, r5, 0
- bl sub_80F9E2C
- ldr r0, _081192AC @ =gStringVar4
- adds r1, r6, 0
- movs r2, 0x1
- bl sub_811B31C
- movs r0, 0x28
- b _081198DA
- .align 2, 0
-_081192AC: .4byte gStringVar4
-_081192B0:
- adds r0, r5, 0
- bl sub_80F9E2C
- movs r0, 0xD
- b _081198DA
-_081192BA:
- adds r0, r6, 0
- adds r0, 0x4C
- movs r1, 0x52
- strh r1, [r0]
- bl sub_80F9E2C
- movs r0, 0xA
- strb r0, [r6, 0x14]
- ldr r0, _081192D8 @ =gStringVar4
- ldr r1, _081192DC @ =gUnknown_203B058
- ldrb r1, [r1]
- bl sub_81162E0
- b _081198DC
- .align 2, 0
-_081192D8: .4byte gStringVar4
-_081192DC: .4byte gUnknown_203B058
-_081192E0:
- bl sub_800AAC0
- movs r0, 0x24
- b _081198DA
-_081192E8:
- ldr r0, _08119318 @ =gReceivedRemoteLinkPlayers
- ldrb r4, [r0]
- cmp r4, 0
- beq _081192F2
- b _081198DC
-_081192F2:
- ldr r1, _0811931C @ =gUnknown_203B058
- movs r0, 0x40
- strb r0, [r1]
- ldr r1, _08119320 @ =gStringVar4
- movs r0, 0x25
- bl sub_8118664
- adds r0, r6, 0
- adds r0, 0x4C
- movs r1, 0
- movs r2, 0xC
- bl memset
- adds r0, r6, 0
- adds r0, 0x86
- strh r4, [r0]
- subs r0, 0x2
- strh r4, [r0]
- b _081198DC
- .align 2, 0
-_08119318: .4byte gReceivedRemoteLinkPlayers
-_0811931C: .4byte gUnknown_203B058
-_08119320: .4byte gStringVar4
-_08119324:
- movs r0, 0x2
- strb r0, [r6, 0x14]
- movs r0, 0
- bl sub_811B258
- b _081198DC
-_08119330:
- ldr r4, _0811934C @ =gStringVar4
- ldr r0, _08119350 @ =gUnknown_203B058
- ldrb r0, [r0]
- movs r1, 0x40
- orrs r1, r0
- adds r0, r4, 0
- bl sub_811AECC
- movs r0, 0xE
- adds r1, r4, 0
- bl sub_8118664
- b _081198DC
- .align 2, 0
-_0811934C: .4byte gStringVar4
-_08119350: .4byte gUnknown_203B058
-_08119354:
- bl sub_800AB9C
- movs r0, 0xF
- b _081198DA
-_0811935C:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- bne _08119368
- b _081198DC
-_08119368:
- movs r0, 0x10
- b _081198DA
-_0811936C:
- ldr r0, [r6, 0x8]
- bl Free
- ldr r0, [r6]
- bl Free
- ldr r0, [r6, 0xC]
- bl Free
- ldr r0, [r6, 0x4]
- bl Free
- adds r0, r6, 0
- adds r0, 0x20
- ldrb r0, [r0]
- bl DestroyTask
- adds r0, r6, 0
- adds r0, 0x21
- bl sub_811BB40
- movs r0, 0x11
- b _081198DA
-_0811939A:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- movs r0, 0x12
- b _081198DA
-_081193AE:
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- beq _081193BA
- b _081198DC
-_081193BA:
- bl sub_811BA78
- adds r0, r4, 0
- bl DestroyTask
- ldr r0, _081193D4 @ =gUnknown_203B05C
- ldr r0, [r0]
- bl Free
- bl sub_81179A4
- b _081198DC
- .align 2, 0
-_081193D4: .4byte gUnknown_203B05C
-_081193D8:
- bl sub_80F9800
- ldrh r1, [r0, 0x8]
- ldr r4, _081193EC @ =0x000003ff
- adds r0, r4, 0
- ands r0, r1
- cmp r0, 0
- bne _081193F0
- movs r0, 0x2B
- b _081198DA
- .align 2, 0
-_081193EC: .4byte 0x000003ff
-_081193F0:
- bl sub_80F9800
- ldrh r1, [r0, 0x8]
- adds r0, r4, 0
- ands r0, r1
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- bne _08119414
- ldr r0, _0811940C @ =gStringVar4
- ldr r1, _08119410 @ =gUnknown_8458DE8
- bl StringCopy
- b _0811944A
- .align 2, 0
-_0811940C: .4byte gStringVar4
-_08119410: .4byte gUnknown_8458DE8
-_08119414:
- ldr r4, _08119454 @ =gStringVar1
- bl sub_80F9800
- ldrh r0, [r0, 0x8]
- lsls r0, 22
- lsrs r0, 22
- movs r1, 0xB
- muls r1, r0
- ldr r0, _08119458 @ =gSpeciesNames
- adds r1, r0
- adds r0, r4, 0
- bl StringCopy
- ldr r4, _0811945C @ =gStringVar2
- bl sub_80F9800
- ldrb r1, [r0, 0xB]
- lsrs r1, 1
- adds r0, r4, 0
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r0, _08119460 @ =gStringVar4
- ldr r1, _08119464 @ =gUnknown_8458DBC
- bl StringExpandPlaceholders
-_0811944A:
- ldr r1, _08119460 @ =gStringVar4
- movs r0, 0x2C
- bl sub_8118664
- b _081198DC
- .align 2, 0
-_08119454: .4byte gStringVar1
-_08119458: .4byte gSpeciesNames
-_0811945C: .4byte gStringVar2
-_08119460: .4byte gStringVar4
-_08119464: .4byte gUnknown_8458DBC
-_08119468:
- adds r0, r6, 0
- adds r0, 0x16
- ldr r1, _08119480 @ =gUnknown_8458AB8
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _0811947A
- b _081198DC
-_0811947A:
- movs r0, 0x2F
- b _081198DA
- .align 2, 0
-_08119480: .4byte gUnknown_8458AB8
-_08119484:
- adds r0, r6, 0
- adds r0, 0x16
- adds r1, r6, 0
- adds r1, 0x1D
- adds r2, r6, 0
- adds r2, 0x1E
- ldr r3, _081194BC @ =gUnknown_8456E34
- ldr r4, _081194C0 @ =gUnknown_8456E54
- str r4, [sp]
- bl sub_811A218
- adds r5, r0, 0
- movs r0, 0x1
- negs r0, r0
- cmp r5, r0
- bne _081194A6
- b _081198DC
-_081194A6:
- subs r0, 0x1
- cmp r5, r0
- beq _081194B0
- cmp r5, 0x3
- bne _081194C4
-_081194B0:
- movs r0, 0x4
- strb r0, [r6, 0x14]
- movs r0, 0x1
- bl sub_811B258
- b _081194E4
- .align 2, 0
-_081194BC: .4byte gUnknown_8456E34
-_081194C0: .4byte gUnknown_8456E54
-_081194C4:
- cmp r5, 0x1
- beq _081194CE
- cmp r5, 0x2
- beq _081194DC
- b _081194E4
-_081194CE:
- ldr r1, _081194D8 @ =gUnknown_8458D1C
- movs r0, 0x35
- bl sub_8118664
- b _081194E4
- .align 2, 0
-_081194D8: .4byte gUnknown_8458D1C
-_081194DC:
- ldr r1, _081194EC @ =gUnknown_8458B44
- movs r0, 0x2F
- bl sub_8118664
-_081194E4:
- bl DestroyHelpMessageWindow_
- b _081198DC
- .align 2, 0
-_081194EC: .4byte gUnknown_8458B44
-_081194F0:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- movs r0, 0x36
- b _081198DA
-_08119504:
- ldr r0, _08119528 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08119512
- b _081198DC
-_08119512:
- ldr r1, _0811952C @ =gUnknown_203B06C
- movs r0, 0x1
- strh r0, [r1]
- ldr r1, _08119530 @ =gFieldCallback
- ldr r0, _08119534 @ =sub_807DCE4
- str r0, [r1]
- ldr r1, _08119538 @ =CB2_ReturnToField
- movs r0, 0x8
- bl sub_81277F4
- b _081198DC
- .align 2, 0
-_08119528: .4byte gPaletteFade
-_0811952C: .4byte gUnknown_203B06C
-_08119530: .4byte gFieldCallback
-_08119534: .4byte sub_807DCE4
-_08119538: .4byte CB2_ReturnToField
-_0811953C:
- adds r0, r6, 0
- adds r0, 0x16
- adds r1, r6, 0
- adds r1, 0x1D
- adds r2, r6, 0
- adds r2, 0x1E
- ldr r3, _08119580 @ =gUnknown_8456E6C
- ldr r4, _08119584 @ =gUnknown_8456F04
- str r4, [sp]
- bl sub_811A218
- adds r5, r0, 0
- movs r0, 0x1
- negs r0, r0
- cmp r5, r0
- bne _0811955E
- b _081198DC
-_0811955E:
- subs r0, 0x1
- cmp r5, r0
- beq _08119568
- cmp r5, 0x12
- bne _08119590
-_08119568:
- ldr r0, _08119588 @ =gUnknown_203B06C
- bl sub_811B148
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl sub_80FAFA0
- ldr r0, _0811958C @ =gUnknown_8458D54
- bl sub_811868C
- b _081198DC
- .align 2, 0
-_08119580: .4byte gUnknown_8456E6C
-_08119584: .4byte gUnknown_8456F04
-_08119588: .4byte gUnknown_203B06C
-_0811958C: .4byte gUnknown_8458D54
-_08119590:
- ldr r0, _08119598 @ =gUnknown_203B06C
- strh r5, [r0, 0x2]
- movs r0, 0x37
- b _081198DA
- .align 2, 0
-_08119598: .4byte gUnknown_203B06C
-_0811959C:
- ldr r2, _081195B0 @ =gUnknown_203B06C
- ldrh r0, [r2, 0x2]
- ldrh r1, [r2, 0xA]
- ldrh r2, [r2, 0xC]
- bl sub_80FAFA0
- ldr r0, _081195B4 @ =gUnknown_8458D78
- bl sub_811868C
- b _081198DC
- .align 2, 0
-_081195B0: .4byte gUnknown_203B06C
-_081195B4: .4byte gUnknown_8458D78
-_081195B8:
- adds r0, r6, 0
- adds r0, 0x16
- movs r1, 0
- bl sub_811A14C
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _081195DE
- cmp r1, 0
- bgt _081195D8
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _081195E2
- b _081198DC
-_081195D8:
- cmp r1, 0x1
- beq _081195E2
- b _081198DC
-_081195DE:
- movs r0, 0x38
- b _081198DA
-_081195E2:
- movs r0, 0x1
- bl sub_811B258
- movs r0, 0x4
- b _081198DA
-_081195EC:
- adds r0, r6, 0
- adds r0, 0x16
- ldr r1, _08119618 @ =gUnknown_8458E10
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _081195FE
- b _081198DC
-_081195FE:
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl sub_80FAFA0
- ldr r0, _0811961C @ =gUnknown_203B06C
- bl sub_811B148
- movs r0, 0x1
- bl sub_811B258
- movs r0, 0x4
- b _081198DA
- .align 2, 0
-_08119618: .4byte gUnknown_8458E10
-_0811961C: .4byte gUnknown_203B06C
-_08119620:
- adds r0, r6, 0
- adds r0, 0x16
- ldr r1, _08119638 @ =gUnknown_8458A98
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _08119632
- b _081198DC
-_08119632:
- movs r0, 0x2E
- b _081198DA
- .align 2, 0
-_08119638: .4byte gUnknown_8458A98
-_0811963C:
- bl sub_811A3F8
- movs r0, 0x30
- b _081198DA
-_08119644:
- adds r0, r6, 0
- adds r0, 0x16
- adds r1, r6, 0
- adds r1, 0x1D
- adds r2, r6, 0
- adds r2, 0x4A
- adds r3, r6, 0
- adds r3, 0x1E
- ldr r4, _08119688 @ =gUnknown_8456F24
- str r4, [sp]
- ldr r4, _0811968C @ =gUnknown_8456F7C
- str r4, [sp, 0x4]
- ldr r4, [r6]
- str r4, [sp, 0x8]
- bl sub_811A2EC
- adds r5, r0, 0
- movs r0, 0x1
- negs r0, r0
- cmp r5, r0
- bne _08119670
- b _081198DC
-_08119670:
- subs r0, 0x1
- cmp r5, r0
- beq _0811967A
- cmp r5, 0x8
- bne _08119690
-_0811967A:
- movs r0, 0x1
- bl sub_811B258
- bl DestroyHelpMessageWindow_
- movs r0, 0x4
- b _081198DA
- .align 2, 0
-_08119688: .4byte gUnknown_8456F24
-_0811968C: .4byte gUnknown_8456F7C
-_08119690:
- ldr r1, [r6]
- lsls r3, r5, 5
- mov r8, r3
- add r1, r8
- ldrb r0, [r1, 0x9]
- lsrs r0, 2
- ldrh r1, [r1, 0x8]
- lsls r1, 22
- lsrs r1, 22
- bl sub_811ADD0
- cmp r0, 0x1
- beq _081196EC
- cmp r0, 0x1
- bgt _081196B4
- cmp r0, 0
- beq _081196BA
- b _081198DC
-_081196B4:
- cmp r0, 0x2
- beq _08119734
- b _081198DC
-_081196BA:
- ldr r4, _081196E4 @ =gStringVar1
- ldr r1, [r6]
- add r1, r8
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy
- ldr r0, [r6]
- add r0, r8
- ldrb r1, [r0]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- ldr r1, _081196E8 @ =gUnknown_8458E70
- movs r0, 0x31
- bl sub_8118664
- strh r5, [r7, 0x2]
- b _081198DC
- .align 2, 0
-_081196E4: .4byte gStringVar1
-_081196E8: .4byte gUnknown_8458E70
-_081196EC:
- ldr r4, _08119724 @ =gStringVar1
- ldr r1, [r6]
- add r1, r8
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy
- ldr r0, [r6]
- add r0, r8
- ldrb r1, [r0]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- ldr r0, _08119728 @ =gStringVar2
- ldr r1, [r6]
- add r1, r8
- ldrb r2, [r1, 0x9]
- lsrs r2, 2
- lsls r1, r2, 3
- subs r1, r2
- ldr r2, _0811972C @ =gTypeNames
- adds r1, r2
- bl StringCopy
- ldr r1, _08119730 @ =gUnknown_8458ED0
- b _0811976A
- .align 2, 0
-_08119724: .4byte gStringVar1
-_08119728: .4byte gStringVar2
-_0811972C: .4byte gTypeNames
-_08119730: .4byte gUnknown_8458ED0
-_08119734:
- ldr r4, _08119774 @ =gStringVar1
- ldr r1, [r6]
- add r1, r8
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy
- ldr r0, [r6]
- add r0, r8
- ldrb r1, [r0]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- ldr r0, _08119778 @ =gStringVar2
- ldr r1, [r6]
- add r1, r8
- ldrb r2, [r1, 0x9]
- lsrs r2, 2
- lsls r1, r2, 3
- subs r1, r2
- ldr r2, _0811977C @ =gTypeNames
- adds r1, r2
- bl StringCopy
- ldr r1, _08119780 @ =gUnknown_8458F04
-_0811976A:
- movs r0, 0x2E
- bl sub_8118664
- b _081198DC
- .align 2, 0
-_08119774: .4byte gStringVar1
-_08119778: .4byte gStringVar2
-_0811977C: .4byte gTypeNames
-_08119780: .4byte gUnknown_8458F04
-_08119784:
- adds r0, r6, 0
- adds r0, 0x16
- movs r1, 0
- bl sub_811A14C
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _081197AA
- cmp r1, 0
- bgt _081197A4
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _081197AE
- b _081198DC
-_081197A4:
- cmp r1, 0x1
- beq _081197AE
- b _081198DC
-_081197AA:
- movs r0, 0x32
- b _081198DA
-_081197AE:
- movs r0, 0x1
- bl sub_811B258
- movs r0, 0x4
- b _081198DA
-_081197B8:
- adds r0, r6, 0
- adds r0, 0x16
- ldr r1, _08119820 @ =gUnknown_8458D1C
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- bne _081197CA
- b _081198DC
-_081197CA:
- ldr r4, _08119824 @ =gUnknown_203B06C
- movs r0, 0x2
- strh r0, [r4]
- ldr r2, _08119828 @ =gUnknown_203B064
- movs r1, 0x2
- ldrsh r0, [r7, r1]
- ldr r1, [r6]
- lsls r0, 5
- adds r0, r1
- ldr r0, [r0]
- str r0, [r2]
- ldr r2, _0811982C @ =gUnionRoomRequestedMonType
- ldr r1, [r6]
- movs r3, 0x2
- ldrsh r0, [r7, r3]
- lsls r0, 5
- adds r1, r0
- ldrb r0, [r1, 0x9]
- lsrs r0, 2
- strb r0, [r2]
- ldr r2, _08119830 @ =gUnionRoomOfferedSpecies
- ldr r1, [r6]
- movs r3, 0x2
- ldrsh r0, [r7, r3]
- lsls r0, 5
- adds r1, r0
- ldrh r0, [r1, 0x8]
- lsls r0, 22
- lsrs r0, 22
- strh r0, [r2]
- ldr r1, _08119834 @ =gFieldCallback
- ldr r0, _08119838 @ =sub_807DCE4
- str r0, [r1]
- ldr r1, _0811983C @ =CB2_ReturnToField
- movs r0, 0x9
- bl sub_81277F4
- adds r0, r6, 0
- bl sub_81186B0
- ldrh r0, [r7, 0x2]
- strb r0, [r4, 0x8]
- b _081198DC
- .align 2, 0
-_08119820: .4byte gUnknown_8458D1C
-_08119824: .4byte gUnknown_203B06C
-_08119828: .4byte gUnknown_203B064
-_0811982C: .4byte gUnionRoomRequestedMonType
-_08119830: .4byte gUnionRoomOfferedSpecies
-_08119834: .4byte gFieldCallback
-_08119838: .4byte sub_807DCE4
-_0811983C: .4byte CB2_ReturnToField
-_08119840:
- ldr r1, _08119890 @ =gUnknown_203B058
- movs r0, 0x44
- strb r0, [r1]
- movs r1, 0x2
- ldrsh r0, [r7, r1]
- lsls r0, 5
- ldr r1, [r6]
- adds r1, r0
- adds r0, r1, 0
- adds r0, 0x10
- movs r2, 0x44
- bl sub_80FC114
- ldr r4, _08119894 @ =gStringVar1
- movs r2, 0x2
- ldrsh r0, [r7, r2]
- lsls r0, 5
- ldr r1, [r6]
- adds r1, r0
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy
- ldr r1, [r6]
- movs r3, 0x2
- ldrsh r0, [r7, r3]
- lsls r0, 5
- adds r1, r0
- ldrb r1, [r1]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- ldr r0, _08119898 @ =gUnknown_8457A34
- ldr r0, [r0, 0x8]
- bl sub_811A0B4
- movs r0, 0x19
- b _081198DA
- .align 2, 0
-_08119890: .4byte gUnknown_203B058
-_08119894: .4byte gStringVar1
-_08119898: .4byte gUnknown_8457A34
-_0811989C:
- adds r0, r6, 0
- adds r0, 0x16
- ldr r1, _081198C4 @ =gStringVar4
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- beq _081198DC
- movs r0, 0x1
- bl sub_811B258
- movs r1, 0
- ldrsh r0, [r7, r1]
- movs r2, 0x2
- ldrsh r1, [r7, r2]
- ldr r2, [r6]
- bl sub_811C028
- movs r0, 0x4
- b _081198DA
- .align 2, 0
-_081198C4: .4byte gStringVar4
-_081198C8:
- adds r0, r6, 0
- adds r0, 0x16
- ldr r1, _081198E8 @ =gStringVar4
- bl sub_811A0F8
- lsls r0, 24
- cmp r0, 0
- beq _081198DC
- ldrb r0, [r6, 0x15]
-_081198DA:
- strb r0, [r6, 0x14]
-_081198DC:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081198E8: .4byte gStringVar4
- thumb_func_end sub_81186E0
-
- thumb_func_start var_800D_set_xB
-var_800D_set_xB: @ 81198EC
- push {lr}
- bl InUnionRoom
- cmp r0, 0x1
- bne _081198FC
- ldr r1, _08119900 @ =gSpecialVar_Result
- movs r0, 0xB
- strh r0, [r1]
-_081198FC:
- pop {r0}
- bx r0
- .align 2, 0
-_08119900: .4byte gSpecialVar_Result
- thumb_func_end var_800D_set_xB
-
- thumb_func_start sub_8119904
-sub_8119904: @ 8119904
- push {r4,r5,lr}
- adds r2, r0, 0
- ldr r3, _08119940 @ =gRecvCmds
- ldrh r5, [r3, 0x12]
- adds r4, r5, 0
- cmp r4, 0
- beq _08119938
- ldrh r0, [r3, 0x10]
- movs r1, 0xFF
- lsls r1, 8
- ands r1, r0
- movs r0, 0xBC
- lsls r0, 6
- cmp r1, r0
- bne _08119938
- adds r0, r2, 0
- adds r0, 0x86
- strh r5, [r0]
- cmp r4, 0x44
- bne _08119938
- ldrh r1, [r3, 0x14]
- adds r0, 0x2
- strh r1, [r0]
- ldrh r1, [r3, 0x16]
- adds r0, 0x2
- strh r1, [r0]
-_08119938:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08119940: .4byte gRecvCmds
- thumb_func_end sub_8119904
-
- thumb_func_start sub_8119944
-sub_8119944: @ 8119944
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r4, 0
- adds r5, 0x86
- ldrh r0, [r5]
- cmp r0, 0
- beq _08119994
- ldr r0, _08119978 @ =gStringVar4
- ldr r1, _0811997C @ =gLinkPlayers
- adds r1, 0x2F
- ldrb r1, [r1]
- adds r2, r5, 0
- adds r3, r4, 0
- bl sub_811AF6C
- cmp r0, 0
- beq _08119994
- cmp r0, 0x1
- bne _08119984
- movs r0, 0x23
- strb r0, [r4, 0x14]
- ldr r1, _08119980 @ =gUnknown_203B058
- ldrh r0, [r5]
- strb r0, [r1]
- movs r0, 0
- b _08119996
- .align 2, 0
-_08119978: .4byte gStringVar4
-_0811997C: .4byte gLinkPlayers
-_08119980: .4byte gUnknown_203B058
-_08119984:
- cmp r0, 0x2
- bne _08119994
- movs r0, 0x24
- strb r0, [r4, 0x14]
- bl sub_800AAC0
- movs r0, 0
- b _08119996
-_08119994:
- movs r0, 0x1
-_08119996:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8119944
-
- thumb_func_start InitUnionRoom
-InitUnionRoom: @ 811999C
- push {r4-r6,lr}
- ldr r5, _081199E8 @ =gUnknown_203B04C
- movs r0, 0x1
- negs r0, r0
- adds r6, r0, 0
- movs r0, 0xFF
- strb r0, [r5]
- ldr r0, _081199EC @ =gQuestLogState
- ldrb r0, [r0]
- subs r0, 0x2
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _081199E0
- ldr r0, _081199F0 @ =sub_81199FC
- movs r1, 0
- bl CreateTask
- ldr r4, _081199F4 @ =gUnknown_203B05C
- movs r0, 0x96
- lsls r0, 2
- bl AllocZeroed
- str r0, [r4]
- ldr r1, _081199F8 @ =gUnknown_300202C
- str r0, [r1]
- movs r1, 0
- strb r1, [r0, 0x14]
- strb r1, [r0, 0x16]
- strh r1, [r0, 0x10]
- strh r1, [r0, 0x12]
- ldrb r0, [r5]
- orrs r0, r6
- strb r0, [r5]
-_081199E0:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081199E8: .4byte gUnknown_203B04C
-_081199EC: .4byte gQuestLogState
-_081199F0: .4byte sub_81199FC
-_081199F4: .4byte gUnknown_203B05C
-_081199F8: .4byte gUnknown_300202C
- thumb_func_end InitUnionRoom
-
- thumb_func_start sub_81199FC
-sub_81199FC: @ 81199FC
- push {r4-r6,lr}
- sub sp, 0x20
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08119A1C @ =gUnknown_203B05C
- ldr r5, [r0]
- ldrb r0, [r5, 0x14]
- cmp r0, 0x4
- bls _08119A10
- b _08119B5C
-_08119A10:
- lsls r0, 2
- ldr r1, _08119A20 @ =_08119A24
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08119A1C: .4byte gUnknown_203B05C
-_08119A20: .4byte _08119A24
- .align 2, 0
-_08119A24:
- .4byte _08119A38
- .4byte _08119A3E
- .4byte _08119A60
- .4byte _08119AB0
- .4byte _08119B28
-_08119A38:
- movs r0, 0x1
- strb r0, [r5, 0x14]
- b _08119B5C
-_08119A3E:
- movs r0, 0xC
- movs r1, 0
- movs r2, 0
- bl sub_80FAF58
- bl sub_800B1F4
- bl OpenLink
- bl sub_80FBC00
- movs r0, 0x1
- bl sub_80FB128
- movs r0, 0x2
- strb r0, [r5, 0x14]
- b _08119B5C
-_08119A60:
- movs r0, 0x70
- bl AllocZeroed
- str r0, [r5, 0x4]
- movs r1, 0x4
- bl sub_811A650
- movs r0, 0x70
- bl AllocZeroed
- str r0, [r5, 0xC]
- movs r1, 0x4
- bl sub_811A650
- movs r0, 0x80
- lsls r0, 1
- bl AllocZeroed
- str r0, [r5]
- movs r1, 0x8
- bl sub_811A5E4
- movs r0, 0x20
- bl AllocZeroed
- str r0, [r5, 0x8]
- movs r1, 0x1
- bl sub_811A5E4
- ldr r0, [r5, 0xC]
- ldr r1, [r5, 0x4]
- movs r2, 0xA
- bl sub_8119E84
- adds r1, r5, 0
- adds r1, 0x20
- strb r0, [r1]
- movs r0, 0x3
- strb r0, [r5, 0x14]
- b _08119B5C
-_08119AB0:
- bl sub_8119B94
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- blt _08119B5C
- cmp r0, 0x2
- bgt _08119B5C
- ldr r0, _08119B14 @ =gUnknown_203B04C
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _08119B5C
- movs r6, 0
-_08119ACA:
- ldr r0, [r5]
- lsls r4, r6, 5
- adds r1, r0, r4
- ldrb r0, [r1, 0x1A]
- lsls r0, 30
- lsrs r0, 30
- cmp r0, 0x1
- bne _08119B0A
- adds r1, 0x10
- mov r0, sp
- bl StringCopy
- ldr r0, [r5]
- adds r0, r4
- ldrb r1, [r0]
- lsls r1, 28
- lsrs r1, 28
- mov r0, sp
- bl ConvertInternationalString
- ldr r0, [r5]
- adds r0, r4
- adds r0, 0x2
- bl sub_8118658
- lsls r0, 16
- lsrs r0, 16
- mov r1, sp
- bl sub_80FD338
- cmp r0, 0
- bne _08119B18
-_08119B0A:
- adds r6, 0x1
- cmp r6, 0x7
- ble _08119ACA
- b _08119B5C
- .align 2, 0
-_08119B14: .4byte gUnknown_203B04C
-_08119B18:
- ldr r0, _08119B24 @ =gUnknown_203B04C
- mov r1, sp
- bl StringCopy
- b _08119B5C
- .align 2, 0
-_08119B24: .4byte gUnknown_203B04C
-_08119B28:
- ldr r0, [r5, 0x8]
- bl Free
- ldr r0, [r5]
- bl Free
- ldr r0, [r5, 0xC]
- bl Free
- ldr r0, [r5, 0x4]
- bl Free
- adds r0, r5, 0
- adds r0, 0x20
- ldrb r0, [r0]
- bl DestroyTask
- ldr r0, _08119B64 @ =gUnknown_203B05C
- ldr r0, [r0]
- bl Free
- bl sub_80F8DC0
- adds r0, r4, 0
- bl DestroyTask
-_08119B5C:
- add sp, 0x20
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08119B64: .4byte gUnknown_203B05C
- thumb_func_end sub_81199FC
-
- thumb_func_start BufferUnionRoomPlayerName
-BufferUnionRoomPlayerName: @ 8119B68
- push {r4,lr}
- ldr r4, _08119B78 @ =gUnknown_203B04C
- ldrb r0, [r4]
- cmp r0, 0xFF
- bne _08119B7C
- movs r0, 0
- b _08119B8A
- .align 2, 0
-_08119B78: .4byte gUnknown_203B04C
-_08119B7C:
- ldr r0, _08119B90 @ =gStringVar1
- adds r1, r4, 0
- bl StringCopy
- movs r0, 0xFF
- strb r0, [r4]
- movs r0, 0x1
-_08119B8A:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08119B90: .4byte gStringVar1
- thumb_func_end BufferUnionRoomPlayerName
-
- thumb_func_start sub_8119B94
-sub_8119B94: @ 8119B94
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- ldr r0, _08119BE8 @ =gUnknown_203B05C
- ldr r4, [r0]
- movs r7, 0
- movs r6, 0
- movs r5, 0
-_08119BA6:
- ldr r0, [r4, 0xC]
- adds r0, r5
- ldr r1, _08119BEC @ =gUnknown_8457034
- bl sub_811A694
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x1
- bne _08119BF0
- ldr r1, [r4, 0xC]
- ldr r0, [r4, 0x8]
- adds r1, r5
- ldm r1!, {r2,r5,r6}
- stm r0!, {r2,r5,r6}
- ldm r1!, {r2,r5,r6}
- stm r0!, {r2,r5,r6}
- ldr r1, [r4, 0x8]
- movs r0, 0
- strh r0, [r1, 0x18]
- ldr r2, [r4, 0x8]
- ldrb r1, [r2, 0x1A]
- movs r5, 0x4
- negs r5, r5
- adds r0, r5, 0
- ands r1, r0
- movs r0, 0x1
- orrs r1, r0
- strb r1, [r2, 0x1A]
- ldr r0, [r4, 0x8]
- strb r3, [r0, 0x1B]
- movs r0, 0x4
- b _08119D24
- .align 2, 0
-_08119BE8: .4byte gUnknown_203B05C
-_08119BEC: .4byte gUnknown_8457034
-_08119BF0:
- adds r5, 0x1C
- adds r6, 0x1
- cmp r6, 0x3
- ble _08119BA6
- movs r6, 0
- mov r9, r6
-_08119BFC:
- ldr r0, [r4]
- mov r1, r9
- lsls r5, r1, 5
- adds r2, r0, r5
- ldrb r0, [r2, 0x1A]
- lsls r0, 30
- mov r8, r5
- cmp r0, 0
- beq _08119CF0
- ldr r1, [r4, 0x4]
- adds r0, r2, 0
- bl sub_811A748
- adds r6, r0, 0
- cmp r6, 0xFF
- beq _08119C96
- ldr r0, [r4]
- adds r2, r0, r5
- ldrb r1, [r2, 0x1A]
- lsls r0, r1, 30
- lsrs r0, 30
- cmp r0, 0x1
- bne _08119C74
- lsls r0, r6, 3
- subs r0, r6
- lsls r6, r0, 2
- ldr r1, [r4, 0x4]
- adds r1, r6
- adds r0, r2, 0
- bl sub_811A6DC
- cmp r0, 0
- beq _08119C5A
- ldr r1, [r4]
- ldr r0, [r4, 0x4]
- adds r1, r5
- adds r0, r6
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldr r0, [r4]
- adds r0, r5
- movs r1, 0x40
- strb r1, [r0, 0x1B]
- movs r7, 0x1
- b _08119C8C
-_08119C5A:
- ldr r0, [r4]
- adds r1, r0, r5
- ldrb r0, [r1, 0x1B]
- cmp r0, 0
- beq _08119C8C
- subs r0, 0x1
- strb r0, [r1, 0x1B]
- ldr r0, [r4]
- adds r0, r5
- ldrb r0, [r0, 0x1B]
- cmp r0, 0
- bne _08119C8C
- b _08119C8A
-_08119C74:
- movs r3, 0x4
- negs r3, r3
- adds r0, r3, 0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0x1A]
- ldr r0, [r4]
- adds r0, r5
- movs r1, 0
- strb r1, [r0, 0x1B]
-_08119C8A:
- movs r7, 0x2
-_08119C8C:
- ldr r0, [r4]
- add r0, r8
- movs r1, 0
- strh r1, [r0, 0x18]
- b _08119CF0
-_08119C96:
- ldr r0, [r4]
- adds r1, r0, r5
- ldrb r0, [r1, 0x1A]
- lsls r2, r0, 30
- lsrs r0, r2, 30
- cmp r0, 0x2
- beq _08119CD0
- ldrh r0, [r1, 0x18]
- adds r0, 0x1
- strh r0, [r1, 0x18]
- ldr r0, [r4]
- adds r2, r0, r5
- ldrh r1, [r2, 0x18]
- ldr r0, _08119CCC @ =0x00000257
- cmp r1, r0
- bls _08119CF0
- ldrb r0, [r2, 0x1A]
- movs r5, 0x4
- negs r5, r5
- adds r1, r5, 0
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2, 0x1A]
- movs r7, 0x2
- b _08119CF0
- .align 2, 0
-_08119CCC: .4byte 0x00000257
-_08119CD0:
- lsrs r0, r2, 30
- cmp r0, 0x2
- bne _08119CF0
- ldrh r0, [r1, 0x18]
- adds r0, 0x1
- strh r0, [r1, 0x18]
- ldr r0, [r4]
- adds r2, r0, r5
- ldrh r1, [r2, 0x18]
- ldr r0, _08119D30 @ =0x00000383
- cmp r1, r0
- bls _08119CF0
- adds r0, r2, 0
- movs r1, 0x1
- bl sub_811A5E4
-_08119CF0:
- mov r0, r9
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- cmp r0, 0x7
- bhi _08119D00
- b _08119BFC
-_08119D00:
- movs r5, 0
- movs r6, 0x3
-_08119D04:
- ldr r0, [r4]
- ldr r1, [r4, 0x4]
- adds r1, r5
- movs r2, 0x8
- bl sub_811A798
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- beq _08119D1A
- movs r7, 0x1
-_08119D1A:
- adds r5, 0x1C
- subs r6, 0x1
- cmp r6, 0
- bge _08119D04
- adds r0, r7, 0
-_08119D24:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_08119D30: .4byte 0x00000383
- thumb_func_end sub_8119B94
-
- thumb_func_start sub_8119D34
-sub_8119D34: @ 8119D34
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x20
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- lsls r0, 2
- add r0, r10
- lsls r0, 3
- ldr r1, _08119E24 @ =gTasks+0x8
- adds r6, r0, r1
- movs r7, 0
- mov r0, sp
- adds r0, 0x10
- str r0, [sp, 0x18]
-_08119D58:
- lsls r2, r7, 24
- lsrs r2, 24
- mov r0, sp
- ldr r1, [sp, 0x18]
- bl sub_80FCC3C
- lsls r0, 24
- lsrs r4, r0, 24
- mov r0, sp
- ldrb r0, [r0, 0xA]
- lsls r0, 25
- lsrs r0, 25
- mov r2, r10
- lsls r1, r2, 2
- add r1, r10
- lsls r1, 3
- ldr r3, _08119E28 @ =gTasks
- adds r1, r3
- movs r5, 0x10
- ldrsh r1, [r1, r5]
- bl sub_8116F28
- cmp r0, 0
- bne _08119D94
- mov r1, sp
- ldr r0, _08119E2C @ =gUnknown_8457034
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
-_08119D94:
- mov r0, sp
- ldrb r1, [r0]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x1
- bne _08119DAC
- mov r1, sp
- ldr r0, _08119E2C @ =gUnknown_8457034
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
-_08119DAC:
- cmp r4, 0
- bne _08119E30
- lsls r0, r7, 3
- mov r8, r0
- adds r1, r7, 0x1
- mov r9, r1
- cmp r7, 0
- ble _08119DEC
- movs r2, 0
- str r2, [sp, 0x1C]
- adds r4, r7, 0
-_08119DC2:
- ldr r0, [r6, 0x4]
- ldr r3, [sp, 0x1C]
- adds r0, r3
- mov r1, sp
- bl sub_811A694
- lsls r0, 24
- cmp r0, 0
- bne _08119DE0
- mov r1, sp
- ldr r0, _08119E2C @ =gUnknown_8457034
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
-_08119DE0:
- ldr r5, [sp, 0x1C]
- adds r5, 0x1C
- str r5, [sp, 0x1C]
- subs r4, 0x1
- cmp r4, 0
- bne _08119DC2
-_08119DEC:
- ldr r1, [r6, 0x4]
- mov r0, r8
- subs r4, r0, r7
- lsls r4, 2
- adds r1, r4
- mov r0, sp
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldr r0, [r6, 0x4]
- adds r0, r4
- ldr r1, _08119E2C @ =gUnknown_8457034
- bl sub_811A694
- ldr r3, [r6, 0x4]
- adds r3, r4
- movs r2, 0x1
- ands r2, r0
- ldrb r0, [r3, 0x18]
- movs r4, 0x2
- negs r4, r4
- adds r1, r4, 0
- ands r0, r1
- orrs r0, r2
- strb r0, [r3, 0x18]
- b _08119E68
- .align 2, 0
-_08119E24: .4byte gTasks+0x8
-_08119E28: .4byte gTasks
-_08119E2C: .4byte gUnknown_8457034
-_08119E30:
- ldr r1, [r6]
- lsls r4, r7, 3
- subs r4, r7
- lsls r4, 2
- adds r1, r4
- mov r0, sp
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldr r0, [r6]
- adds r0, r4
- ldr r1, _08119E80 @ =gUnknown_8457034
- bl sub_811A694
- ldr r3, [r6]
- adds r3, r4
- movs r2, 0x1
- ands r2, r0
- ldrb r0, [r3, 0x18]
- movs r4, 0x2
- negs r4, r4
- adds r1, r4, 0
- ands r0, r1
- orrs r0, r2
- strb r0, [r3, 0x18]
- adds r7, 0x1
- mov r9, r7
-_08119E68:
- mov r7, r9
- cmp r7, 0x3
- bgt _08119E70
- b _08119D58
-_08119E70:
- add sp, 0x20
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08119E80: .4byte gUnknown_8457034
- thumb_func_end sub_8119D34
-
- thumb_func_start sub_8119E84
-sub_8119E84: @ 8119E84
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- ldr r0, _08119EB0 @ =sub_8119D34
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r2, _08119EB4 @ =gTasks+0x8
- adds r3, r1, r2
- str r4, [r3]
- str r5, [r3, 0x4]
- adds r2, r1
- strh r6, [r2, 0x8]
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08119EB0: .4byte sub_8119D34
-_08119EB4: .4byte gTasks+0x8
- thumb_func_end sub_8119E84
-
- thumb_func_start sub_8119EB8
-sub_8119EB8: @ 8119EB8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- lsls r0, 2
- add r0, r10
- lsls r0, 3
- ldr r1, _08119FA4 @ =gTasks+0x8
- adds r6, r0, r1
- movs r3, 0
-_08119ED6:
- lsls r4, r3, 3
- subs r0, r4, r3
- lsls r5, r0, 2
- ldr r0, [r6]
- adds r0, r5
- adds r1, r0, 0
- adds r1, 0x10
- lsls r2, r3, 24
- lsrs r2, 24
- str r3, [sp]
- bl sub_80FCC3C
- ldr r0, [r6]
- adds r0, r5
- ldrb r0, [r0, 0xA]
- lsls r0, 25
- lsrs r0, 25
- mov r2, r10
- lsls r1, r2, 2
- add r1, r10
- lsls r1, 3
- ldr r7, _08119FA8 @ =gTasks
- adds r1, r7
- movs r2, 0xC
- ldrsh r1, [r1, r2]
- bl sub_8116F28
- mov r8, r4
- ldr r3, [sp]
- cmp r0, 0
- bne _08119F22
- ldr r1, [r6]
- adds r1, r5
- ldr r0, _08119FAC @ =gUnknown_8457034
- ldm r0!, {r2,r4,r7}
- stm r1!, {r2,r4,r7}
- ldm r0!, {r2,r4,r7}
- stm r1!, {r2,r4,r7}
-_08119F22:
- adds r4, r3, 0x1
- mov r9, r4
- cmp r3, 0
- ble _08119F66
- str r5, [sp, 0x4]
- movs r5, 0
- str r5, [sp, 0x8]
- adds r4, r3, 0
-_08119F32:
- ldr r1, [r6]
- ldr r7, [sp, 0x8]
- adds r0, r1, r7
- ldr r2, [sp, 0x4]
- adds r1, r2
- str r3, [sp]
- bl sub_811A694
- lsls r0, 24
- ldr r3, [sp]
- cmp r0, 0
- bne _08119F5A
- ldr r1, [r6]
- ldr r5, [sp, 0x4]
- adds r1, r5
- ldr r0, _08119FAC @ =gUnknown_8457034
- ldm r0!, {r2,r5,r7}
- stm r1!, {r2,r5,r7}
- ldm r0!, {r2,r5,r7}
- stm r1!, {r2,r5,r7}
-_08119F5A:
- ldr r7, [sp, 0x8]
- adds r7, 0x1C
- str r7, [sp, 0x8]
- subs r4, 0x1
- cmp r4, 0
- bne _08119F32
-_08119F66:
- mov r0, r8
- subs r4, r0, r3
- lsls r4, 2
- ldr r0, [r6]
- adds r0, r4
- ldr r1, _08119FAC @ =gUnknown_8457034
- bl sub_811A694
- ldr r3, [r6]
- adds r3, r4
- movs r2, 0x1
- ands r2, r0
- ldrb r0, [r3, 0x18]
- movs r4, 0x2
- negs r4, r4
- adds r1, r4, 0
- ands r0, r1
- orrs r0, r2
- strb r0, [r3, 0x18]
- mov r3, r9
- cmp r3, 0x3
- ble _08119ED6
- add sp, 0xC
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08119FA4: .4byte gTasks+0x8
-_08119FA8: .4byte gTasks
-_08119FAC: .4byte gUnknown_8457034
- thumb_func_end sub_8119EB8
-
- thumb_func_start sub_8119FB0
-sub_8119FB0: @ 8119FB0
- push {lr}
- lsls r1, 16
- asrs r1, 16
- cmp r1, 0x7
- bne _08119FC0
- ldrb r1, [r0]
- movs r0, 0x20
- b _08119FC8
-_08119FC0:
- cmp r1, 0x8
- bne _08119FD2
- ldrb r1, [r0]
- movs r0, 0x10
-_08119FC8:
- ands r0, r1
- cmp r0, 0
- beq _08119FD2
- movs r0, 0x1
- b _08119FD4
-_08119FD2:
- movs r0, 0
-_08119FD4:
- pop {r1}
- bx r1
- thumb_func_end sub_8119FB0
-
- thumb_func_start sub_8119FD8
-sub_8119FD8: @ 8119FD8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _0811A04C @ =gTasks+0x8
- adds r4, r1, r0
- movs r6, 0
- subs r0, 0x8
- movs r5, 0
- adds r1, r0
- mov r8, r1
-_08119FF6:
- ldr r0, [r4]
- adds r0, r5
- adds r1, r0, 0
- adds r1, 0x10
- lsls r2, r6, 24
- lsrs r2, 24
- bl sub_80FCCF4
- lsls r0, 24
- cmp r0, 0
- beq _0811A01A
- ldr r0, [r4]
- adds r0, r5
- mov r2, r8
- movs r3, 0xC
- ldrsh r1, [r2, r3]
- bl sub_8119FB0
-_0811A01A:
- ldr r0, [r4]
- adds r0, r5
- ldr r1, _0811A050 @ =gUnknown_8457034
- bl sub_811A694
- ldr r3, [r4]
- adds r3, r5
- movs r2, 0x1
- ands r2, r0
- ldrb r0, [r3, 0x18]
- movs r7, 0x2
- negs r7, r7
- adds r1, r7, 0
- ands r0, r1
- orrs r0, r2
- strb r0, [r3, 0x18]
- adds r5, 0x1C
- adds r6, 0x1
- cmp r6, 0x3
- ble _08119FF6
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811A04C: .4byte gTasks+0x8
-_0811A050: .4byte gUnknown_8457034
- thumb_func_end sub_8119FD8
-
- thumb_func_start sub_811A054
-sub_811A054: @ 811A054
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldr r0, _0811A07C @ =sub_8119EB8
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- lsls r2, r0, 2
- adds r2, r0
- lsls r2, 3
- ldr r1, _0811A080 @ =gTasks+0x8
- adds r3, r2, r1
- str r4, [r3]
- adds r1, r2
- strh r5, [r1, 0x4]
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_0811A07C: .4byte sub_8119EB8
-_0811A080: .4byte gTasks+0x8
- thumb_func_end sub_811A054
-
- thumb_func_start sub_811A084
-sub_811A084: @ 811A084
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldr r0, _0811A0AC @ =sub_8119FD8
- movs r1, 0
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- lsls r2, r0, 2
- adds r2, r0
- lsls r2, 3
- ldr r1, _0811A0B0 @ =gTasks+0x8
- adds r3, r2, r1
- str r4, [r3]
- adds r1, r2
- strh r5, [r1, 0x4]
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_0811A0AC: .4byte sub_8119FD8
-_0811A0B0: .4byte gTasks+0x8
- thumb_func_end sub_811A084
-
- thumb_func_start sub_811A0B4
-sub_811A0B4: @ 811A0B4
- push {r4,lr}
- adds r4, r0, 0
- bl LoadStdWindowFrameGfx
- movs r0, 0
- movs r1, 0x1
- bl DrawDialogueFrame
- ldr r0, _0811A0DC @ =gStringVar4
- adds r1, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0
- movs r1, 0x1
- bl AddTextPrinterWithCustomSpeedForMessage
- movs r0, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0811A0DC: .4byte gStringVar4
- thumb_func_end sub_811A0B4
-
- thumb_func_start sub_811A0E0
-sub_811A0E0: @ 811A0E0
- push {lr}
- bl RunTextPrinters_CheckPrinter0Active
- lsls r0, 16
- cmp r0, 0
- beq _0811A0F0
- movs r0, 0
- b _0811A0F2
-_0811A0F0:
- movs r0, 0x1
-_0811A0F2:
- pop {r1}
- bx r1
- thumb_func_end sub_811A0E0
-
- thumb_func_start sub_811A0F8
-sub_811A0F8: @ 811A0F8
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldrb r0, [r4]
- cmp r0, 0
- beq _0811A10A
- cmp r0, 0x1
- beq _0811A130
- b _0811A142
-_0811A10A:
- bl LoadStdWindowFrameGfx
- movs r0, 0
- movs r1, 0x1
- bl DrawDialogueFrame
- ldr r0, _0811A12C @ =gStringVar4
- adds r1, r5, 0
- bl StringExpandPlaceholders
- movs r0, 0x1
- bl AddTextPrinterForMessage
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _0811A142
- .align 2, 0
-_0811A12C: .4byte gStringVar4
-_0811A130:
- bl RunTextPrinters_CheckPrinter0Active
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _0811A142
- strb r0, [r4]
- movs r0, 0x1
- b _0811A144
-_0811A142:
- movs r0, 0
-_0811A144:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_811A0F8
-
- thumb_func_start sub_811A14C
-sub_811A14C: @ 811A14C
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldrb r0, [r4]
- cmp r0, 0
- beq _0811A15E
- cmp r0, 0x1
- beq _0811A174
- b _0811A1A0
-_0811A15E:
- cmp r5, 0
- beq _0811A168
- movs r0, 0x3
- negs r0, r0
- b _0811A1A4
-_0811A168:
- bl DisplayYesNoMenuDefaultYes
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _0811A1A0
-_0811A174:
- cmp r5, 0
- beq _0811A186
- bl DestroyYesNoMenu
- movs r0, 0
- strb r0, [r4]
- movs r0, 0x3
- negs r0, r0
- b _0811A1A4
-_0811A186:
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- movs r2, 0x80
- lsls r2, 17
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x2
- bhi _0811A1A0
- strb r5, [r4]
- adds r0, r1, 0
- b _0811A1A4
-_0811A1A0:
- movs r0, 0x2
- negs r0, r0
-_0811A1A4:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_811A14C
-
- thumb_func_start sub_811A1AC
-sub_811A1AC: @ 811A1AC
- push {r4,lr}
- sub sp, 0x8
- bl AddWindow
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0
- bl DrawStdWindowFrame
- adds r0, r4, 0
- movs r1, 0xFF
- bl FillWindowPixelBuffer
- ldr r2, _0811A1F8 @ =gUnknown_8459378
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0x6
- str r0, [sp, 0x4]
- adds r0, r4, 0
- movs r1, 0
- movs r3, 0x8
- bl sub_811A444
- adds r0, r4, 0
- bl PutWindowTilemap
- adds r0, r4, 0
- movs r1, 0x2
- bl CopyWindowToVram
- adds r0, r4, 0
- add sp, 0x8
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0811A1F8: .4byte gUnknown_8459378
- thumb_func_end sub_811A1AC
-
- thumb_func_start sub_811A1FC
-sub_811A1FC: @ 811A1FC
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0x1
- bl ClearStdWindowAndFrame
- adds r0, r4, 0
- bl RemoveWindow
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_811A1FC
-
- thumb_func_start sub_811A218
-sub_811A218: @ 811A218
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r7, r0, 0
- adds r5, r1, 0
- mov r9, r2
- adds r0, r3, 0
- ldrb r4, [r7]
- cmp r4, 0
- beq _0811A234
- cmp r4, 0x1
- beq _0811A274
- b _0811A2DA
-_0811A234:
- bl AddWindow
- strb r0, [r5]
- ldrb r0, [r5]
- movs r1, 0
- bl DrawStdWindowFrame
- ldr r0, _0811A270 @ =gMultiuseListMenuTemplate
- adds r2, r0, 0
- ldr r1, [sp, 0x1C]
- ldm r1!, {r3,r4,r6}
- stm r2!, {r3,r4,r6}
- ldm r1!, {r3,r4,r6}
- stm r2!, {r3,r4,r6}
- ldrb r1, [r5]
- strb r1, [r0, 0x10]
- movs r1, 0
- movs r2, 0
- bl ListMenuInit
- mov r1, r9
- strb r0, [r1]
- ldrb r0, [r5]
- movs r1, 0x1
- bl CopyWindowToVram
- ldrb r0, [r7]
- adds r0, 0x1
- strb r0, [r7]
- b _0811A2DA
- .align 2, 0
-_0811A270: .4byte gMultiuseListMenuTemplate
-_0811A274:
- mov r3, r9
- ldrb r0, [r3]
- bl ListMenu_ProcessInput
- mov r8, r0
- ldr r0, _0811A2AC @ =gMain
- ldrh r1, [r0, 0x2E]
- ands r4, r1
- cmp r4, 0
- beq _0811A2B0
- mov r4, r9
- ldrb r0, [r4]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- ldrb r0, [r5]
- movs r1, 0x1
- bl ClearStdWindowAndFrame
- ldrb r0, [r5]
- bl RemoveWindow
- movs r0, 0
- strb r0, [r7]
- mov r0, r8
- b _0811A2DE
- .align 2, 0
-_0811A2AC: .4byte gMain
-_0811A2B0:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0811A2DA
- mov r6, r9
- ldrb r0, [r6]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- ldrb r0, [r5]
- movs r1, 0x1
- bl ClearStdWindowAndFrame
- ldrb r0, [r5]
- bl RemoveWindow
- strb r4, [r7]
- movs r0, 0x2
- negs r0, r0
- b _0811A2DE
-_0811A2DA:
- movs r0, 0x1
- negs r0, r0
-_0811A2DE:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_811A218
-
- thumb_func_start sub_811A2EC
-sub_811A2EC: @ 811A2EC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- mov r9, r0
- adds r4, r1, 0
- adds r5, r2, 0
- adds r7, r3, 0
- ldrb r0, [r0]
- cmp r0, 0
- beq _0811A308
- cmp r0, 0x1
- beq _0811A358
- b _0811A3E6
-_0811A308:
- ldr r0, _0811A350 @ =gUnknown_8456F1C
- bl sub_811A1AC
- strb r0, [r7]
- ldr r0, [sp, 0x1C]
- bl AddWindow
- strb r0, [r4]
- ldrb r0, [r4]
- movs r1, 0
- bl DrawStdWindowFrame
- ldr r0, _0811A354 @ =gMultiuseListMenuTemplate
- adds r2, r0, 0
- ldr r1, [sp, 0x20]
- ldm r1!, {r3,r6,r7}
- stm r2!, {r3,r6,r7}
- ldm r1!, {r3,r6,r7}
- stm r2!, {r3,r6,r7}
- ldrb r1, [r4]
- strb r1, [r0, 0x10]
- movs r1, 0
- movs r2, 0x1
- bl ListMenuInit
- strb r0, [r5]
- ldrb r0, [r4]
- movs r1, 0x1
- bl CopyWindowToVram
- mov r1, r9
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _0811A3E6
- .align 2, 0
-_0811A350: .4byte gUnknown_8456F1C
-_0811A354: .4byte gMultiuseListMenuTemplate
-_0811A358:
- ldrb r0, [r5]
- bl ListMenu_ProcessInput
- adds r1, r0, 0
- ldr r0, _0811A3A8 @ =gMain
- ldrh r2, [r0, 0x2E]
- movs r0, 0x3
- ands r0, r2
- cmp r0, 0
- beq _0811A3E6
- cmp r1, 0x8
- beq _0811A37E
- movs r0, 0x2
- ands r0, r2
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- cmp r0, 0
- beq _0811A3AC
-_0811A37E:
- ldrb r0, [r5]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- ldrb r0, [r4]
- movs r1, 0x1
- bl ClearStdWindowAndFrame
- ldrb r0, [r4]
- bl RemoveWindow
- ldrb r0, [r7]
- bl sub_811A1FC
- movs r0, 0
- mov r3, r9
- strb r0, [r3]
- movs r0, 0x2
- negs r0, r0
- b _0811A3EA
- .align 2, 0
-_0811A3A8: .4byte gMain
-_0811A3AC:
- ldr r0, [sp, 0x24]
- bl sub_811AD7C
- adds r6, r0, 0
- cmp r6, 0
- blt _0811A3E0
- ldrb r0, [r5]
- movs r1, 0
- movs r2, 0
- bl DestroyListMenuTask
- ldrb r0, [r4]
- movs r1, 0x1
- bl ClearStdWindowAndFrame
- ldrb r0, [r4]
- bl RemoveWindow
- ldrb r0, [r7]
- bl sub_811A1FC
- mov r0, r8
- mov r7, r9
- strb r0, [r7]
- adds r0, r6, 0
- b _0811A3EA
-_0811A3E0:
- movs r0, 0x7
- bl PlaySE
-_0811A3E6:
- movs r0, 0x1
- negs r0, r0
-_0811A3EA:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_811A2EC
-
- thumb_func_start sub_811A3F8
-sub_811A3F8: @ 811A3F8
- push {lr}
- sub sp, 0xC
- movs r0, 0x20
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- add sp, 0xC
- pop {r0}
- bx r0
- thumb_func_end sub_811A3F8
-
- thumb_func_start sub_811A41C
-sub_811A41C: @ 811A41C
- push {lr}
- sub sp, 0xC
- movs r0, 0x20
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- bl EnableBothScriptContexts
- add sp, 0xC
- pop {r0}
- bx r0
- thumb_func_end sub_811A41C
-
- thumb_func_start sub_811A444
-sub_811A444: @ 811A444
- push {r4,r5,lr}
- sub sp, 0x10
- ldr r5, [sp, 0x1C]
- ldr r4, [sp, 0x20]
- lsls r3, 24
- lsrs r3, 24
- lsls r5, 24
- lsrs r5, 24
- lsls r4, 24
- lsrs r4, 24
- str r2, [sp]
- mov r2, sp
- strb r0, [r2, 0x4]
- mov r0, sp
- strb r1, [r0, 0x5]
- strb r3, [r0, 0x6]
- strb r5, [r0, 0x7]
- strb r3, [r0, 0x8]
- strb r5, [r0, 0x9]
- ldrb r1, [r2, 0xC]
- movs r0, 0x10
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0xC]
- ldr r2, _0811A490 @ =gTextFlags
- ldrb r1, [r2]
- movs r0, 0x3
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- cmp r4, 0x6
- bls _0811A486
- b _0811A5D2
-_0811A486:
- lsls r0, r4, 2
- ldr r1, _0811A494 @ =_0811A498
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0811A490: .4byte gTextFlags
-_0811A494: .4byte _0811A498
- .align 2, 0
-_0811A498:
- .4byte _0811A4B4
- .4byte _0811A4E0
- .4byte _0811A50C
- .4byte _0811A538
- .4byte _0811A564
- .4byte _0811A590
- .4byte _0811A5A8
-_0811A4B4:
- mov r0, sp
- movs r1, 0
- strb r1, [r0, 0xA]
- strb r1, [r0, 0xB]
- mov r2, sp
- ldrb r1, [r2, 0xC]
- movs r3, 0xF
- adds r0, r3, 0
- ands r0, r1
- movs r1, 0x20
- orrs r0, r1
- strb r0, [r2, 0xC]
- ldrb r1, [r2, 0xD]
- movs r0, 0x10
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0xD]
- ands r0, r3
- movs r1, 0x30
- b _0811A5CE
-_0811A4E0:
- mov r0, sp
- movs r1, 0
- strb r1, [r0, 0xA]
- strb r1, [r0, 0xB]
- mov r2, sp
- ldrb r1, [r2, 0xC]
- movs r3, 0xF
- adds r0, r3, 0
- ands r0, r1
- movs r1, 0x40
- orrs r0, r1
- strb r0, [r2, 0xC]
- ldrb r1, [r2, 0xD]
- movs r0, 0x10
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0xD]
- ands r0, r3
- movs r1, 0x50
- b _0811A5CE
-_0811A50C:
- mov r0, sp
- movs r1, 0
- strb r1, [r0, 0xA]
- strb r1, [r0, 0xB]
- mov r2, sp
- ldrb r1, [r2, 0xC]
- movs r3, 0xF
- adds r0, r3, 0
- ands r0, r1
- movs r1, 0x60
- orrs r0, r1
- strb r0, [r2, 0xC]
- ldrb r1, [r2, 0xD]
- movs r0, 0x10
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0xD]
- ands r0, r3
- movs r1, 0x70
- b _0811A5CE
-_0811A538:
- mov r0, sp
- movs r1, 0
- strb r1, [r0, 0xA]
- strb r1, [r0, 0xB]
- mov r2, sp
- ldrb r1, [r2, 0xC]
- movs r3, 0xF
- adds r0, r3, 0
- ands r0, r1
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r2, 0xC]
- ldrb r1, [r2, 0xD]
- movs r0, 0x10
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0xD]
- ands r0, r3
- movs r1, 0x30
- b _0811A5CE
-_0811A564:
- mov r0, sp
- movs r1, 0
- strb r1, [r0, 0xA]
- strb r1, [r0, 0xB]
- mov r2, sp
- ldrb r1, [r2, 0xC]
- movs r3, 0xF
- adds r0, r3, 0
- ands r0, r1
- movs r1, 0x10
- orrs r0, r1
- strb r0, [r2, 0xC]
- ldrb r1, [r2, 0xD]
- movs r0, 0x10
- negs r0, r0
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r2, 0xD]
- ands r0, r3
- movs r1, 0x30
- b _0811A5CE
-_0811A590:
- mov r0, sp
- movs r1, 0
- strb r1, [r0, 0xA]
- strb r1, [r0, 0xB]
- mov r2, sp
- ldrb r1, [r2, 0xC]
- movs r4, 0xF
- movs r3, 0xF
- adds r0, r3, 0
- ands r0, r1
- movs r1, 0x70
- b _0811A5BE
-_0811A5A8:
- mov r0, sp
- movs r1, 0
- strb r1, [r0, 0xA]
- strb r1, [r0, 0xB]
- mov r2, sp
- ldrb r1, [r2, 0xC]
- movs r4, 0xF
- movs r3, 0xF
- adds r0, r3, 0
- ands r0, r1
- movs r1, 0xE0
-_0811A5BE:
- orrs r0, r1
- strb r0, [r2, 0xC]
- mov r1, sp
- ldrb r0, [r1, 0xD]
- orrs r0, r4
- strb r0, [r1, 0xD]
- ands r0, r3
- movs r1, 0x90
-_0811A5CE:
- orrs r0, r1
- strb r0, [r2, 0xD]
-_0811A5D2:
- mov r0, sp
- movs r1, 0xFF
- movs r2, 0
- bl AddTextPrinter
- add sp, 0x10
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811A444
-
- thumb_func_start sub_811A5E4
-sub_811A5E4: @ 811A5E4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0
- beq _0811A63C
- ldr r2, _0811A64C @ =gUnknown_8457034
- mov r8, r2
- movs r5, 0
- mov r9, r5
- movs r6, 0x4
- negs r6, r6
- mov r12, r6
- adds r2, r0, 0
- adds r2, 0x18
- adds r4, r0, 0
- movs r7, 0xFF
- mov r10, r7
- adds r3, r1, 0
-_0811A610:
- adds r1, r4, 0
- mov r0, r8
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- mov r0, r10
- strh r0, [r2]
- ldrb r1, [r2, 0x2]
- mov r0, r12
- ands r0, r1
- movs r1, 0x5
- negs r1, r1
- ands r0, r1
- strb r0, [r2, 0x2]
- mov r5, r9
- strb r5, [r2, 0x3]
- adds r2, 0x20
- adds r4, 0x20
- subs r3, 0x1
- cmp r3, 0
- bne _0811A610
-_0811A63C:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811A64C: .4byte gUnknown_8457034
- thumb_func_end sub_811A5E4
-
- thumb_func_start sub_811A650
-sub_811A650: @ 811A650
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r1, _0811A690 @ =gUnknown_8457034
- mov r12, r1
- movs r5, 0x2
- negs r5, r5
- mov r8, r5
- adds r2, r0, 0
- adds r2, 0x18
- adds r3, r0, 0
- movs r4, 0x3
-_0811A668:
- adds r1, r3, 0
- mov r0, r12
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldrb r1, [r2]
- mov r0, r8
- ands r0, r1
- strb r0, [r2]
- adds r2, 0x1C
- adds r3, 0x1C
- subs r4, 0x1
- cmp r4, 0
- bge _0811A668
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811A690: .4byte gUnknown_8457034
- thumb_func_end sub_811A650
-
- thumb_func_start sub_811A694
-sub_811A694: @ 811A694
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r6, r1, 0
- movs r2, 0
- adds r4, r5, 0x2
- adds r3, r6, 0x2
-_0811A6A0:
- adds r0, r4, r2
- adds r1, r3, r2
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bne _0811A6C8
- adds r2, 0x1
- cmp r2, 0x1
- ble _0811A6A0
- movs r2, 0
- adds r4, r5, 0
- adds r4, 0x10
- adds r3, r6, 0
- adds r3, 0x10
-_0811A6BC:
- adds r0, r4, r2
- adds r1, r3, r2
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- beq _0811A6CC
-_0811A6C8:
- movs r0, 0x1
- b _0811A6D4
-_0811A6CC:
- adds r2, 0x1
- cmp r2, 0x7
- ble _0811A6BC
- movs r0, 0
-_0811A6D4:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_811A694
-
- thumb_func_start sub_811A6DC
-sub_811A6DC: @ 811A6DC
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r6, r1, 0
- ldrb r3, [r5, 0xA]
- movs r0, 0x7F
- ldrb r2, [r6, 0xA]
- adds r1, r0, 0
- ands r1, r3
- ands r0, r2
- cmp r1, r0
- bne _0811A740
- movs r0, 0x80
- adds r1, r0, 0
- ands r1, r3
- ands r0, r2
- cmp r1, r0
- bne _0811A740
- movs r2, 0
- adds r4, r5, 0x4
- adds r3, r6, 0x4
-_0811A704:
- adds r0, r4, r2
- adds r1, r3, r2
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bne _0811A740
- adds r2, 0x1
- cmp r2, 0x3
- ble _0811A704
- ldrh r2, [r5, 0x8]
- ldr r0, _0811A73C @ =0x000003ff
- ldrh r3, [r6, 0x8]
- adds r1, r0, 0
- ands r1, r2
- ands r0, r3
- cmp r1, r0
- bne _0811A740
- ldrb r2, [r5, 0x9]
- movs r0, 0xFC
- ldrb r3, [r6, 0x9]
- adds r1, r0, 0
- ands r1, r2
- ands r0, r3
- cmp r1, r0
- bne _0811A740
- movs r0, 0
- b _0811A742
- .align 2, 0
-_0811A73C: .4byte 0x000003ff
-_0811A740:
- movs r0, 0x1
-_0811A742:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_811A6DC
-
- thumb_func_start sub_811A748
-sub_811A748: @ 811A748
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r8, r0
- movs r7, 0xFF
- movs r6, 0
- adds r4, r1, 0
- adds r4, 0x18
- adds r5, r1, 0
-_0811A75A:
- ldrb r1, [r4]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0811A782
- mov r0, r8
- adds r1, r5, 0
- bl sub_811A694
- lsls r0, 24
- cmp r0, 0
- bne _0811A782
- lsls r0, r6, 24
- lsrs r7, r0, 24
- ldrb r0, [r4]
- movs r2, 0x2
- negs r2, r2
- adds r1, r2, 0
- ands r0, r1
- strb r0, [r4]
-_0811A782:
- adds r4, 0x1C
- adds r5, 0x1C
- adds r6, 0x1
- cmp r6, 0x3
- ble _0811A75A
- adds r0, r7, 0
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_811A748
-
- thumb_func_start sub_811A798
-sub_811A798: @ 811A798
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- adds r3, r0, 0
- mov r8, r1
- lsls r2, 24
- lsrs r6, r2, 24
- ldrb r1, [r1, 0x18]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0811A80C
- movs r5, 0
- cmp r5, r6
- bge _0811A80C
- movs r0, 0x4
- negs r0, r0
- mov r9, r0
- movs r1, 0x2
- negs r1, r1
- mov r12, r1
- adds r2, r3, 0
- adds r2, 0x18
- adds r1, r3, 0
-_0811A7CA:
- ldrb r0, [r2, 0x2]
- movs r3, 0x3
- ands r3, r0
- cmp r3, 0
- bne _0811A802
- mov r0, r8
- ldm r0!, {r4,r6,r7}
- stm r1!, {r4,r6,r7}
- ldm r0!, {r4,r6,r7}
- stm r1!, {r4,r6,r7}
- strh r3, [r2]
- ldrb r1, [r2, 0x2]
- mov r0, r9
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2, 0x2]
- movs r0, 0x40
- strb r0, [r2, 0x3]
- mov r0, r8
- ldrb r1, [r0, 0x18]
- mov r0, r12
- ands r0, r1
- mov r1, r8
- strb r0, [r1, 0x18]
- lsls r0, r5, 24
- lsrs r0, 24
- b _0811A80E
-_0811A802:
- adds r2, 0x20
- adds r1, 0x20
- adds r5, 0x1
- cmp r5, r6
- blt _0811A7CA
-_0811A80C:
- movs r0, 0xFF
-_0811A80E:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_811A798
-
- thumb_func_start sub_811A81C
-sub_811A81C: @ 811A81C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x30
- adds r4, r1, 0
- adds r5, r3, 0
- ldr r3, [sp, 0x50]
- ldr r1, [sp, 0x54]
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r4, 24
- lsrs r4, 24
- lsls r2, 24
- lsrs r6, r2, 24
- lsls r3, 24
- lsrs r3, 24
- mov r10, r3
- lsls r1, 24
- lsrs r1, 24
- ldr r0, _0811A904 @ =gStringVar4
- mov r8, r0
- adds r1, 0x1
- movs r2, 0x2
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- ldr r1, _0811A908 @ =gUnknown_84571B0
- mov r0, r8
- bl StringAppend
- str r6, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- adds r0, r7, 0
- movs r1, 0
- mov r2, r8
- adds r3, r4, 0
- bl sub_811A444
- adds r4, 0x12
- lsls r4, 24
- lsrs r4, 24
- mov r9, r4
- ldrb r0, [r5, 0xA]
- lsls r0, 25
- lsrs r2, r0, 25
- ldrb r1, [r5, 0x1A]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0x1
- bne _0811A8F2
- movs r0, 0x40
- ands r2, r0
- cmp r2, 0
- bne _0811A8F2
- add r4, sp, 0x10
- adds r1, r5, 0
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy
- ldrb r1, [r5]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- str r6, [sp]
- mov r0, r10
- str r0, [sp, 0x4]
- adds r0, r7, 0
- movs r1, 0x2
- adds r2, r4, 0
- mov r3, r9
- bl sub_811A444
- ldrb r1, [r5, 0x2]
- ldrb r0, [r5, 0x3]
- lsls r0, 8
- orrs r1, r0
- add r0, sp, 0x8
- movs r2, 0x2
- movs r3, 0x5
- bl ConvertIntToDecimalStringN
- ldr r1, _0811A90C @ =gUnknown_84571B4
- mov r0, r8
- bl StringCopy
- mov r0, r8
- add r1, sp, 0x8
- bl StringAppend
- mov r3, r9
- adds r3, 0x4D
- lsls r3, 24
- lsrs r3, 24
- str r6, [sp]
- mov r0, r10
- str r0, [sp, 0x4]
- adds r0, r7, 0
- movs r1, 0
- mov r2, r8
- bl sub_811A444
-_0811A8F2:
- add sp, 0x30
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811A904: .4byte gStringVar4
-_0811A908: .4byte gUnknown_84571B0
-_0811A90C: .4byte gUnknown_84571B4
- thumb_func_end sub_811A81C
-
- thumb_func_start sub_811A910
-sub_811A910: @ 811A910
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x30
- adds r5, r3, 0
- ldr r3, [sp, 0x4C]
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r1, 24
- lsrs r6, r1, 24
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- lsls r3, 24
- lsrs r7, r3, 24
- ldrb r1, [r5, 0x1A]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0x1
- bne _0811A9A2
- add r4, sp, 0x10
- adds r1, r5, 0
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy
- ldrb r1, [r5]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- mov r0, r8
- str r0, [sp]
- str r7, [sp, 0x4]
- mov r0, r9
- movs r1, 0x2
- adds r2, r4, 0
- adds r3, r6, 0
- bl sub_811A444
- ldrb r1, [r5, 0x2]
- ldrb r0, [r5, 0x3]
- lsls r0, 8
- orrs r1, r0
- add r0, sp, 0x8
- movs r2, 0x2
- movs r3, 0x5
- bl ConvertIntToDecimalStringN
- ldr r4, _0811A9B0 @ =gStringVar4
- ldr r1, _0811A9B4 @ =gUnknown_84571B4
- adds r0, r4, 0
- bl StringCopy
- adds r0, r4, 0
- add r1, sp, 0x8
- bl StringAppend
- adds r3, r6, 0
- adds r3, 0x47
- lsls r3, 24
- lsrs r3, 24
- mov r0, r8
- str r0, [sp]
- str r7, [sp, 0x4]
- mov r0, r9
- movs r1, 0
- adds r2, r4, 0
- bl sub_811A444
-_0811A9A2:
- add sp, 0x30
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811A9B0: .4byte gStringVar4
-_0811A9B4: .4byte gUnknown_84571B4
- thumb_func_end sub_811A910
-
- thumb_func_start sub_811A9B8
-sub_811A9B8: @ 811A9B8
- push {r4,lr}
- sub sp, 0x4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl GetXYCoordsOneStepInFrontOfPlayer
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0x9
- bne _0811A9F0
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0x8
- bne _0811A9F0
- ldr r0, _0811A9EC @ =gPlayerAvatar
- ldrb r0, [r0, 0x3]
- cmp r0, 0x2
- beq _0811A9E6
- cmp r0, 0
- bne _0811A9F0
-_0811A9E6:
- movs r0, 0x1
- b _0811A9F2
- .align 2, 0
-_0811A9EC: .4byte gPlayerAvatar
-_0811A9F0:
- movs r0, 0
-_0811A9F2:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811A9B8
-
- thumb_func_start sub_811A9FC
-sub_811A9FC: @ 811A9FC
- push {lr}
- cmp r0, 0x4
- beq _0811AA14
- cmp r0, 0x4
- ble _0811AA1C
- cmp r0, 0x5
- beq _0811AA10
- cmp r0, 0x8
- beq _0811AA18
- b _0811AA1C
-_0811AA10:
- movs r0, 0x1
- b _0811AA1E
-_0811AA14:
- movs r0, 0x2
- b _0811AA1E
-_0811AA18:
- movs r0, 0x3
- b _0811AA1E
-_0811AA1C:
- movs r0, 0
-_0811AA1E:
- pop {r1}
- bx r1
- thumb_func_end sub_811A9FC
-
- thumb_func_start sub_811AA24
-sub_811AA24: @ 811AA24
- push {r4,lr}
- sub sp, 0x20
- adds r4, r0, 0
- adds r1, r4, 0
- adds r1, 0x10
- mov r0, sp
- bl StringCopy
- ldrb r1, [r4]
- lsls r1, 28
- lsrs r1, 28
- mov r0, sp
- bl ConvertInternationalString
- adds r4, 0x2
- adds r0, r4, 0
- bl sub_8118658
- lsls r0, 16
- lsrs r0, 16
- mov r1, sp
- bl sub_80FD338
- add sp, 0x20
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811AA24
-
- thumb_func_start sub_811AA5C
-sub_811AA5C: @ 811AA5C
- push {r4-r7,lr}
- adds r7, r3, 0
- lsls r1, 24
- lsrs r6, r1, 24
- lsls r2, 24
- lsrs r2, 19
- adds r5, r0, r2
- ldrb r1, [r5, 0xA]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0811AAE4
- cmp r6, 0
- bne _0811AAE4
- ldr r4, _0811AAC4 @ =gStringVar1
- adds r1, r5, 0
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy
- ldrb r1, [r5]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- adds r0, r5, 0x2
- bl sub_8118658
- lsls r0, 16
- lsrs r0, 16
- adds r1, r4, 0
- bl sub_80FD338
- adds r2, r0, 0
- ldrb r1, [r5, 0xA]
- movs r0, 0x7F
- ands r0, r1
- cmp r0, 0x45
- bne _0811AAD0
- ldr r0, _0811AAC8 @ =gStringVar4
- ldr r3, _0811AACC @ =gUnknown_8457F80
- lsls r1, r7, 2
- lsls r2, 3
- adds r1, r2
- adds r1, r3
- ldr r1, [r1]
- bl StringExpandPlaceholders
- movs r0, 0x2
- b _0811ABD2
- .align 2, 0
-_0811AAC4: .4byte gStringVar1
-_0811AAC8: .4byte gStringVar4
-_0811AACC: .4byte gUnknown_8457F80
-_0811AAD0:
- ldr r0, _0811AAE0 @ =gUnknown_8457A34
- lsls r1, r2, 2
- adds r1, r0
- ldr r0, [r1]
- bl sub_811A0B4
- movs r0, 0x1
- b _0811ABD2
- .align 2, 0
-_0811AAE0: .4byte gUnknown_8457A34
-_0811AAE4:
- ldr r4, _0811AB24 @ =gStringVar1
- adds r1, r5, 0
- adds r1, 0x10
- adds r0, r4, 0
- bl StringCopy
- ldrb r1, [r5]
- lsls r1, 28
- lsrs r1, 28
- adds r0, r4, 0
- bl ConvertInternationalString
- cmp r6, 0
- beq _0811AB0A
- adds r0, r5, r6
- ldrb r0, [r0, 0x3]
- lsrs r7, r0, 3
- movs r0, 0x1
- ands r7, r0
-_0811AB0A:
- ldrb r0, [r5, 0xA]
- lsls r0, 25
- lsrs r0, 25
- movs r1, 0x3F
- ands r1, r0
- cmp r1, 0x4
- beq _0811AB58
- cmp r1, 0x4
- bgt _0811AB28
- cmp r1, 0x1
- beq _0811AB32
- b _0811ABC8
- .align 2, 0
-_0811AB24: .4byte gStringVar1
-_0811AB28:
- cmp r1, 0x5
- beq _0811AB78
- cmp r1, 0x8
- beq _0811AB9C
- b _0811ABC8
-_0811AB32:
- ldr r5, _0811AB50 @ =gStringVar4
- ldr r4, _0811AB54 @ =gUnknown_8458758
- bl Random
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- lsrs r1, 14
- lsls r0, r7, 4
- adds r1, r0
- adds r1, r4
- ldr r1, [r1]
- b _0811ABB6
- .align 2, 0
-_0811AB50: .4byte gStringVar4
-_0811AB54: .4byte gUnknown_8458758
-_0811AB58:
- ldr r5, _0811AB70 @ =gStringVar4
- ldr r4, _0811AB74 @ =gUnknown_8458A78
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- lsls r0, 2
- lsls r1, r7, 4
- b _0811ABB0
- .align 2, 0
-_0811AB70: .4byte gStringVar4
-_0811AB74: .4byte gUnknown_8458A78
-_0811AB78:
- ldr r5, _0811AB94 @ =gStringVar4
- ldr r4, _0811AB98 @ =gUnknown_84588BC
- bl Random
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- lsrs r1, 14
- lsls r0, r7, 4
- adds r1, r0
- adds r1, r4
- ldr r1, [r1]
- b _0811ABB6
- .align 2, 0
-_0811AB94: .4byte gStringVar4
-_0811AB98: .4byte gUnknown_84588BC
-_0811AB9C:
- ldr r5, _0811ABC0 @ =gStringVar4
- ldr r4, _0811ABC4 @ =gUnknown_84589AC
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ands r0, r1
- lsls r0, 2
- lsls r1, r7, 3
-_0811ABB0:
- adds r0, r1
- adds r0, r4
- ldr r1, [r0]
-_0811ABB6:
- adds r0, r5, 0
- bl StringExpandPlaceholders
- b _0811ABD0
- .align 2, 0
-_0811ABC0: .4byte gStringVar4
-_0811ABC4: .4byte gUnknown_84589AC
-_0811ABC8:
- ldr r0, _0811ABD8 @ =gStringVar4
- ldr r1, _0811ABDC @ =gUnknown_8457F90
- bl StringExpandPlaceholders
-_0811ABD0:
- movs r0, 0
-_0811ABD2:
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0811ABD8: .4byte gStringVar4
-_0811ABDC: .4byte gUnknown_8457F90
- thumb_func_end sub_811AA5C
-
- thumb_func_start nullsub_92
-nullsub_92: @ 811ABE0
- bx lr
- thumb_func_end nullsub_92
-
- thumb_func_start sub_811ABE4
-sub_811ABE4: @ 811ABE4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0xC
- ldr r4, [sp, 0x28]
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r4, 24
- lsrs r4, 24
- ldrh r0, [r2, 0x8]
- lsls r0, 22
- lsrs r0, 22
- mov r8, r0
- ldrb r0, [r2, 0x9]
- lsrs r7, r0, 2
- ldrb r0, [r2, 0xB]
- lsrs r0, 1
- mov r9, r0
- str r5, [sp]
- str r4, [sp, 0x4]
- adds r0, r6, 0
- movs r1, 0x2
- adds r2, r3, 0
- movs r3, 0x8
- bl sub_811A444
- movs r0, 0xCE
- lsls r0, 1
- cmp r8, r0
- bne _0811AC3C
- ldr r2, _0811AC38 @ =gUnknown_8458FBC
- str r5, [sp]
- str r4, [sp, 0x4]
- adds r0, r6, 0
- movs r1, 0x2
- movs r3, 0x44
- bl sub_811A444
- b _0811AC90
- .align 2, 0
-_0811AC38: .4byte gUnknown_8458FBC
-_0811AC3C:
- adds r1, r7, 0x1
- adds r0, r6, 0
- movs r2, 0x44
- adds r3, r5, 0
- bl BlitMoveInfoIcon
- movs r0, 0xB
- mov r2, r8
- muls r2, r0
- ldr r0, _0811ACA0 @ =gSpeciesNames
- adds r2, r0
- str r5, [sp]
- str r4, [sp, 0x4]
- adds r0, r6, 0
- movs r1, 0x2
- movs r3, 0x76
- bl sub_811A444
- add r0, sp, 0x8
- mov r1, r9
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- movs r0, 0x2
- add r1, sp, 0x8
- movs r2, 0
- bl GetStringWidth
- lsls r0, 16
- lsrs r0, 16
- movs r3, 0xDA
- subs r3, r0
- lsls r3, 24
- lsrs r3, 24
- str r5, [sp]
- str r4, [sp, 0x4]
- adds r0, r6, 0
- movs r1, 0x2
- add r2, sp, 0x8
- bl sub_811A444
-_0811AC90:
- add sp, 0xC
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811ACA0: .4byte gSpeciesNames
- thumb_func_end sub_811ABE4
-
- thumb_func_start sub_811ACA4
-sub_811ACA4: @ 811ACA4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0xC
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- ldr r0, _0811ACF8 @ =gUnknown_203B05C
- ldr r6, [r0]
- movs r0, 0x3
- negs r0, r0
- cmp r4, r0
- bne _0811AD38
- ldr r0, _0811ACFC @ =gUnknown_8456F7C
- ldrb r0, [r0, 0x14]
- lsls r0, 28
- lsrs r0, 28
- cmp r8, r0
- bne _0811AD38
- bl sub_80F9800
- adds r2, r0, 0
- ldrh r1, [r2, 0x8]
- ldr r0, _0811AD00 @ =0x000003ff
- ands r0, r1
- cmp r0, 0
- beq _0811AD6C
- ldr r0, _0811AD04 @ =gSaveBlock2Ptr
- ldr r3, [r0]
- movs r0, 0x5
- str r0, [sp]
- mov r0, r9
- mov r1, r8
- bl sub_811ABE4
- b _0811AD6C
- .align 2, 0
-_0811ACF8: .4byte gUnknown_203B05C
-_0811ACFC: .4byte gUnknown_8456F7C
-_0811AD00: .4byte 0x000003ff
-_0811AD04: .4byte gSaveBlock2Ptr
-_0811AD08:
- mov r0, r12
- adds r1, r0, r4
- adds r1, 0x10
- add r0, sp, 0x4
- bl StringCopy
- ldr r0, [r6]
- adds r0, r4
- ldrb r1, [r0]
- lsls r1, 28
- lsrs r1, 28
- add r0, sp, 0x4
- bl ConvertInternationalString
- ldr r2, [r6]
- adds r2, r4
- movs r0, 0x6
- str r0, [sp]
- mov r0, r9
- mov r1, r8
- add r3, sp, 0x4
- bl sub_811ABE4
- b _0811AD6C
-_0811AD38:
- movs r5, 0
- movs r1, 0
- ldr r0, [r6]
- mov r12, r0
- mov r2, r12
- adds r2, 0x8
- movs r3, 0
- adds r7, r4, 0x1
-_0811AD48:
- ldrb r0, [r2, 0x12]
- lsls r0, 30
- lsrs r0, 30
- adds r4, r3, 0
- cmp r0, 0x1
- bne _0811AD5E
- ldrh r0, [r2]
- lsls r0, 22
- cmp r0, 0
- beq _0811AD5E
- adds r5, 0x1
-_0811AD5E:
- cmp r5, r7
- beq _0811AD08
- adds r2, 0x20
- adds r3, 0x20
- adds r1, 0x1
- cmp r1, 0x7
- ble _0811AD48
-_0811AD6C:
- add sp, 0xC
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_811ACA4
-
- thumb_func_start sub_811AD7C
-sub_811AD7C: @ 811AD7C
- push {r4-r7,lr}
- movs r4, 0
- movs r3, 0
- movs r7, 0x3
- ldr r6, _0811ADAC @ =0x000003ff
- adds r2, r0, 0
- adds r2, 0x8
- adds r5, r1, 0x1
-_0811AD8C:
- ldrb r1, [r2, 0x12]
- adds r0, r7, 0
- ands r0, r1
- cmp r0, 0x1
- bne _0811ADA2
- ldrh r1, [r2]
- adds r0, r6, 0
- ands r0, r1
- cmp r0, 0
- beq _0811ADA2
- adds r4, 0x1
-_0811ADA2:
- cmp r4, r5
- bne _0811ADB0
- adds r0, r3, 0
- b _0811ADBC
- .align 2, 0
-_0811ADAC: .4byte 0x000003ff
-_0811ADB0:
- adds r2, 0x20
- adds r3, 0x1
- cmp r3, 0x7
- ble _0811AD8C
- movs r0, 0x1
- negs r0, r0
-_0811ADBC:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_811AD7C
-
- thumb_func_start sub_811ADC4
-sub_811ADC4: @ 811ADC4
- lsls r0, 5
- adds r0, r1
- ldrb r0, [r0, 0xB]
- lsls r0, 31
- lsrs r0, 31
- bx lr
- thumb_func_end sub_811ADC4
-
- thumb_func_start sub_811ADD0
-sub_811ADD0: @ 811ADD0
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r0, 0xCE
- lsls r0, 1
- cmp r1, r0
- bne _0811AE10
- movs r4, 0
- b _0811ADFA
-_0811ADE0:
- movs r0, 0x64
- muls r0, r4
- ldr r1, _0811AE08 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x41
- bl GetMonData
- adds r1, r0, 0
- movs r0, 0xCE
- lsls r0, 1
- cmp r1, r0
- beq _0811AE40
- adds r4, 0x1
-_0811ADFA:
- ldr r0, _0811AE0C @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r4, r0
- blt _0811ADE0
- movs r0, 0x2
- b _0811AE5C
- .align 2, 0
-_0811AE08: .4byte gPlayerParty
-_0811AE0C: .4byte gPlayerPartyCount
-_0811AE10:
- movs r4, 0
- ldr r0, _0811AE44 @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r4, r0
- bge _0811AE5A
- ldr r6, _0811AE48 @ =gBaseStats
-_0811AE1C:
- movs r0, 0x64
- muls r0, r4
- ldr r1, _0811AE4C @ =gPlayerParty
- adds r0, r1
- movs r1, 0x41
- bl GetMonData
- adds r1, r0, 0
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r1, r0, r6
- ldrb r0, [r1, 0x6]
- cmp r0, r5
- beq _0811AE40
- ldrb r0, [r1, 0x7]
- cmp r0, r5
- bne _0811AE50
-_0811AE40:
- movs r0, 0
- b _0811AE5C
- .align 2, 0
-_0811AE44: .4byte gPlayerPartyCount
-_0811AE48: .4byte gBaseStats
-_0811AE4C: .4byte gPlayerParty
-_0811AE50:
- adds r4, 0x1
- ldr r0, _0811AE64 @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r4, r0
- blt _0811AE1C
-_0811AE5A:
- movs r0, 0x1
-_0811AE5C:
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0811AE64: .4byte gPlayerPartyCount
- thumb_func_end sub_811ADD0
-
- thumb_func_start sub_811AE68
-sub_811AE68: @ 811AE68
- push {lr}
- adds r3, r0, 0
- cmp r1, 0x44
- beq _0811AEA4
- cmp r1, 0x44
- bgt _0811AE7A
- cmp r1, 0x41
- beq _0811AE84
- b _0811AEC2
-_0811AE7A:
- cmp r1, 0x45
- beq _0811AE94
- cmp r1, 0x48
- beq _0811AEB4
- b _0811AEC2
-_0811AE84:
- ldr r0, _0811AE90 @ =gUnknown_8458314
- lsls r1, r2, 2
- adds r1, r0
- ldr r1, [r1]
- b _0811AEA6
- .align 2, 0
-_0811AE90: .4byte gUnknown_8458314
-_0811AE94:
- ldr r0, _0811AEA0 @ =gUnknown_84585E8
- lsls r1, r2, 2
- adds r1, r0
- ldr r1, [r1]
- b _0811AEA6
- .align 2, 0
-_0811AEA0: .4byte gUnknown_84585E8
-_0811AEA4:
- ldr r1, _0811AEB0 @ =gUnknown_8458F9C
-_0811AEA6:
- adds r0, r3, 0
- bl StringExpandPlaceholders
- b _0811AEC2
- .align 2, 0
-_0811AEB0: .4byte gUnknown_8458F9C
-_0811AEB4:
- ldr r0, _0811AEC8 @ =gUnknown_84583B4
- lsls r1, r2, 2
- adds r1, r0
- ldr r1, [r1]
- adds r0, r3, 0
- bl StringExpandPlaceholders
-_0811AEC2:
- pop {r0}
- bx r0
- .align 2, 0
-_0811AEC8: .4byte gUnknown_84583B4
- thumb_func_end sub_811AE68
-
- thumb_func_start sub_811AECC
-sub_811AECC: @ 811AECC
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r1, 24
- lsrs r4, r1, 24
- adds r6, r4, 0
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r2, _0811AF00 @ =gLinkPlayers
- movs r0, 0x1
- adds r1, r3, 0
- eors r1, r0
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x13]
- cmp r4, 0x44
- beq _0811AF20
- cmp r4, 0x44
- bgt _0811AF04
- cmp r4, 0x41
- beq _0811AF0A
- b _0811AF60
- .align 2, 0
-_0811AF00: .4byte gLinkPlayers
-_0811AF04:
- cmp r6, 0x45
- beq _0811AF44
- b _0811AF60
-_0811AF0A:
- ldr r2, _0811AF1C @ =gUnknown_8458230
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 3
- adds r1, r0
- b _0811AF32
- .align 2, 0
-_0811AF1C: .4byte gUnknown_8458230
-_0811AF20:
- ldr r2, _0811AF40 @ =gUnknown_8458230
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 3
- adds r1, r0
- adds r2, 0x8
-_0811AF32:
- adds r1, r2
- ldr r1, [r1]
- adds r0, r5, 0
- bl StringCopy
- b _0811AF60
- .align 2, 0
-_0811AF40: .4byte gUnknown_8458230
-_0811AF44:
- ldr r2, _0811AF68 @ =gUnknown_8458230
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- lsls r0, r3, 1
- adds r0, r3
- lsls r0, 3
- adds r1, r0
- adds r2, 0x4
- adds r1, r2
- ldr r1, [r1]
- adds r0, r5, 0
- bl StringCopy
-_0811AF60:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811AF68: .4byte gUnknown_8458230
- thumb_func_end sub_811AECC
-
- thumb_func_start sub_811AF6C
-sub_811AF6C: @ 811AF6C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r0, 0
- adds r5, r2, 0
- adds r6, r3, 0
- movs r2, 0
- mov r8, r2
- ldrh r0, [r5]
- subs r0, 0x40
- cmp r0, 0x8
- bls _0811AF86
- b _0811B092
-_0811AF86:
- lsls r0, 2
- ldr r1, _0811AF90 @ =_0811AF94
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0811AF90: .4byte _0811AF94
- .align 2, 0
-_0811AF94:
- .4byte _0811B088
- .4byte _0811AFB8
- .4byte _0811B092
- .4byte _0811B092
- .4byte _0811AFC8
- .4byte _0811AFC0
- .4byte _0811B092
- .4byte _0811B092
- .4byte _0811B078
-_0811AFB8:
- ldr r1, _0811AFBC @ =gUnknown_8457CA4
- b _0811B07A
- .align 2, 0
-_0811AFBC: .4byte gUnknown_8457CA4
-_0811AFC0:
- ldr r1, _0811AFC4 @ =gUnknown_8457CF8
- b _0811B07A
- .align 2, 0
-_0811AFC4: .4byte gUnknown_8457CF8
-_0811AFC8:
- adds r0, r6, 0
- adds r0, 0x58
- ldr r4, _0811AFF0 @ =gUnknown_203B06C
- ldrh r1, [r4, 0xC]
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- adds r0, r6, 0
- adds r0, 0x63
- ldrh r2, [r4, 0xA]
- movs r1, 0xB
- muls r1, r2
- ldr r2, _0811AFF4 @ =gSpeciesNames
- adds r1, r2
- bl StringCopy
- movs r4, 0
- b _0811AFFA
- .align 2, 0
-_0811AFF0: .4byte gUnknown_203B06C
-_0811AFF4: .4byte gSpeciesNames
-_0811AFF8:
- adds r4, 0x1
-_0811AFFA:
- cmp r4, 0x3
- bgt _0811B030
- ldr r0, _0811B044 @ =gRfuLinkStatus
- ldr r0, [r0]
- lsls r1, r4, 5
- adds r0, r1
- ldrh r0, [r0, 0x18]
- cmp r0, 0x2
- bne _0811AFF8
- ldrh r1, [r5, 0x4]
- adds r0, r6, 0
- adds r0, 0x6E
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldrh r1, [r5, 0x2]
- movs r0, 0xB
- muls r1, r0
- ldr r0, _0811B048 @ =gSpeciesNames
- adds r1, r0
- adds r0, r6, 0
- adds r0, 0x79
- bl StringCopy
- ldrh r5, [r5, 0x2]
- mov r8, r5
-_0811B030:
- movs r0, 0xCE
- lsls r0, 1
- cmp r8, r0
- bne _0811B050
- ldr r1, _0811B04C @ =gUnknown_8457DB8
- adds r0, r7, 0
- bl StringCopy
- b _0811B080
- .align 2, 0
-_0811B044: .4byte gRfuLinkStatus
-_0811B048: .4byte gSpeciesNames
-_0811B04C: .4byte gUnknown_8457DB8
-_0811B050:
- movs r4, 0
- adds r5, r6, 0
- adds r5, 0x58
-_0811B056:
- lsls r0, r4, 24
- lsrs r0, 24
- adds r1, r5, 0
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- adds r5, 0xB
- adds r4, 0x1
- cmp r4, 0x3
- ble _0811B056
- ldr r1, _0811B074 @ =gUnknown_8457D44
- adds r0, r7, 0
- bl DynamicPlaceholderTextUtil_ExpandPlaceholders
- b _0811B080
- .align 2, 0
-_0811B074: .4byte gUnknown_8457D44
-_0811B078:
- ldr r1, _0811B084 @ =gUnknown_8457C48
-_0811B07A:
- adds r0, r7, 0
- bl StringExpandPlaceholders
-_0811B080:
- movs r2, 0x1
- b _0811B092
- .align 2, 0
-_0811B084: .4byte gUnknown_8457C48
-_0811B088:
- ldr r1, _0811B0A0 @ =gUnknown_8457E0C
- adds r0, r7, 0
- bl StringExpandPlaceholders
- movs r2, 0x2
-_0811B092:
- adds r0, r2, 0
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0811B0A0: .4byte gUnknown_8457E0C
- thumb_func_end sub_811AF6C
-
- thumb_func_start sub_811B0A4
-sub_811B0A4: @ 811B0A4
- push {lr}
- adds r2, r0, 0
- ldr r0, _0811B0C4 @ =gRecvCmds
- ldrh r1, [r0, 0x2]
- cmp r1, 0
- beq _0811B0C8
- cmp r1, 0x51
- beq _0811B0B8
- cmp r1, 0x52
- bne _0811B0C8
-_0811B0B8:
- adds r0, r2, 0
- adds r0, 0x84
- strh r1, [r0]
- movs r0, 0x1
- b _0811B0CA
- .align 2, 0
-_0811B0C4: .4byte gRecvCmds
-_0811B0C8:
- movs r0, 0
-_0811B0CA:
- pop {r1}
- bx r1
- thumb_func_end sub_811B0A4
-
- thumb_func_start InUnionRoom
-InUnionRoom: @ 811B0D0
- push {lr}
- movs r2, 0
- ldr r0, _0811B0EC @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrh r1, [r0, 0x4]
- movs r0, 0x80
- lsls r0, 3
- cmp r1, r0
- bne _0811B0E4
- movs r2, 0x1
-_0811B0E4:
- adds r0, r2, 0
- pop {r1}
- bx r1
- .align 2, 0
-_0811B0EC: .4byte gSaveBlock1Ptr
- thumb_func_end InUnionRoom
-
- thumb_func_start sub_811B0F0
-sub_811B0F0: @ 811B0F0
- push {r4-r6,lr}
- movs r6, 0
- movs r5, 0
- ldr r0, _0811B138 @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r6, r0
- bge _0811B130
-_0811B0FE:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _0811B13C @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- cmp r0, 0x1E
- bhi _0811B126
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- movs r1, 0xCE
- lsls r1, 1
- cmp r0, r1
- beq _0811B126
- adds r6, 0x1
-_0811B126:
- adds r5, 0x1
- ldr r0, _0811B138 @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r5, r0
- blt _0811B0FE
-_0811B130:
- cmp r6, 0x1
- bgt _0811B140
- movs r0, 0
- b _0811B142
- .align 2, 0
-_0811B138: .4byte gPlayerPartyCount
-_0811B13C: .4byte gPlayerParty
-_0811B140:
- movs r0, 0x1
-_0811B142:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_811B0F0
-
- thumb_func_start sub_811B148
-sub_811B148: @ 811B148
- movs r1, 0
- strh r1, [r0]
- strh r1, [r0, 0x2]
- str r1, [r0, 0x4]
- strh r1, [r0, 0xA]
- strh r1, [r0, 0xC]
- strh r1, [r0, 0xE]
- strh r1, [r0, 0x10]
- str r1, [r0, 0x14]
- bx lr
- thumb_func_end sub_811B148
-
- thumb_func_start Script_ResetUnionRoomTrade
-Script_ResetUnionRoomTrade: @ 811B15C
- push {lr}
- ldr r0, _0811B168 @ =gUnknown_203B06C
- bl sub_811B148
- pop {r0}
- bx r0
- .align 2, 0
-_0811B168: .4byte gUnknown_203B06C
- thumb_func_end Script_ResetUnionRoomTrade
-
- thumb_func_start sub_811B16C
-sub_811B16C: @ 811B16C
- push {r4,r5,lr}
- adds r5, r1, 0
- movs r1, 0x64
- adds r4, r0, 0
- muls r4, r1
- ldr r0, _0811B1A8 @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- strh r0, [r5, 0xA]
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- strh r0, [r5, 0xC]
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- str r0, [r5, 0x4]
- ldrh r1, [r5, 0xA]
- movs r0, 0xCE
- lsls r0, 1
- cmp r1, r0
- beq _0811B1AC
- movs r0, 0
- b _0811B1AE
- .align 2, 0
-_0811B1A8: .4byte gPlayerParty
-_0811B1AC:
- movs r0, 0x1
-_0811B1AE:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_811B16C
-
- thumb_func_start sub_811B1B4
-sub_811B1B4: @ 811B1B4
- push {r4,r5,lr}
- adds r5, r1, 0
- movs r1, 0x64
- adds r4, r0, 0
- muls r4, r1
- ldr r0, _0811B1E8 @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- strh r0, [r5, 0xE]
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- strh r0, [r5, 0x10]
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- str r0, [r5, 0x14]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0811B1E8: .4byte gPlayerParty
- thumb_func_end sub_811B1B4
-
- thumb_func_start sub_811B1EC
-sub_811B1EC: @ 811B1EC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r1, 24
- movs r2, 0
- mov r8, r2
- cmp r1, 0
- bne _0811B20A
- ldrh r7, [r0, 0xA]
- ldr r6, [r0, 0x4]
- b _0811B20E
-_0811B202:
- lsls r0, r5, 16
- lsrs r0, 16
- mov r8, r0
- b _0811B242
-_0811B20A:
- ldrh r7, [r0, 0xE]
- ldr r6, [r0, 0x14]
-_0811B20E:
- movs r5, 0
- b _0811B23A
-_0811B212:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _0811B250 @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- cmp r0, r6
- bne _0811B238
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- cmp r0, r7
- beq _0811B202
-_0811B238:
- adds r5, 0x1
-_0811B23A:
- ldr r0, _0811B254 @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r5, r0
- blt _0811B212
-_0811B242:
- mov r0, r8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0811B250: .4byte gPlayerParty
-_0811B254: .4byte gPlayerPartyCount
- thumb_func_end sub_811B1EC
-
- thumb_func_start sub_811B258
-sub_811B258: @ 811B258
- push {r4,lr}
- adds r4, r0, 0
- bl sub_811A3F8
- bl ScriptContext2_Disable
- bl sub_80696F0
- ldr r1, _0811B290 @ =gUnknown_203B058
- movs r0, 0
- strb r0, [r1]
- cmp r4, 0
- beq _0811B288
- ldr r2, _0811B294 @ =gUnknown_203B06C
- ldrh r0, [r2, 0x2]
- ldrh r1, [r2, 0xA]
- ldrh r2, [r2, 0xC]
- bl sub_80FAFA0
- movs r0, 0x40
- movs r1, 0
- movs r2, 0
- bl sub_80FB008
-_0811B288:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0811B290: .4byte gUnknown_203B058
-_0811B294: .4byte gUnknown_203B06C
- thumb_func_end sub_811B258
-
- thumb_func_start sub_811B298
-sub_811B298: @ 811B298
- push {lr}
- bl ScriptContext2_Enable
- bl ScriptFreezeObjectEvents
- pop {r0}
- bx r0
- thumb_func_end sub_811B298
-
- thumb_func_start sub_811B2A8
-sub_811B2A8: @ 811B2A8
- push {r4,lr}
- movs r4, 0x80
- ldr r3, _0811B2D4 @ =gLinkPlayers
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r0, r1, r3
- ldrb r2, [r0, 0x13]
- lsls r2, 3
- orrs r2, r4
- adds r3, 0x4
- adds r1, r3
- ldr r0, [r1]
- movs r1, 0x7
- ands r0, r1
- orrs r0, r2
- lsls r0, 24
- lsrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0811B2D4: .4byte gLinkPlayers
- thumb_func_end sub_811B2A8
-
- thumb_func_start sub_811B2D8
-sub_811B2D8: @ 811B2D8
- push {r4,lr}
- movs r3, 0x80
- movs r2, 0
- ldr r4, [r0, 0xC]
-_0811B2E0:
- lsls r0, r2, 3
- subs r0, r2
- lsls r0, 2
- adds r1, r4, r0
- ldrb r0, [r1, 0x18]
- lsls r0, 31
- cmp r0, 0
- beq _0811B308
- ldrb r0, [r1, 0xB]
- lsls r0, 31
- lsrs r0, 31
- lsls r0, 3
- orrs r3, r0
- ldrb r1, [r1, 0x2]
- movs r0, 0x7
- ands r0, r1
- orrs r3, r0
- lsls r0, r3, 24
- lsrs r3, r0, 24
- b _0811B312
-_0811B308:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x3
- bls _0811B2E0
-_0811B312:
- adds r0, r3, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811B2D8
-
- thumb_func_start sub_811B31C
-sub_811B31C: @ 811B31C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- mov r9, r1
- lsls r2, 24
- lsrs r2, 24
- str r2, [sp]
- bl GetMultiplayerId
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 5
- ldr r0, _0811B4B0 @ =gTrainerCards
- adds r1, r0
- mov r8, r1
- bl DynamicPlaceholderTextUtil_Reset
- mov r6, r9
- adds r6, 0xAC
- bl sub_80447F0
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xD
- muls r1, r0
- ldr r0, _0811B4B4 @ =gTrainerClassNames
- adds r1, r0
- adds r0, r6, 0
- bl StringCopy
- movs r0, 0
- adds r1, r6, 0
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- mov r1, r8
- adds r1, 0x30
- movs r0, 0x1
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- movs r4, 0xB0
- lsls r4, 1
- add r4, r9
- ldr r1, _0811B4B8 @ =gUnknown_84594B0
- mov r2, r8
- ldrb r0, [r2, 0x1]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- adds r0, r4, 0
- bl StringCopy
- movs r0, 0x2
- adds r1, r4, 0
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- mov r5, r9
- adds r5, 0xCA
- mov r0, r8
- ldrh r1, [r0, 0xC]
- adds r0, r5, 0
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- movs r0, 0x3
- adds r1, r5, 0
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- movs r2, 0xD9
- add r2, r9
- mov r10, r2
- mov r0, r8
- ldrh r1, [r0, 0x10]
- mov r0, r10
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- mov r4, r9
- adds r4, 0xE8
- mov r2, r8
- ldrh r1, [r2, 0x12]
- adds r0, r4, 0
- movs r2, 0x2
- movs r3, 0x2
- bl ConvertIntToDecimalStringN
- movs r0, 0x4
- mov r1, r10
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- movs r0, 0x5
- adds r1, r4, 0
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- movs r4, 0xC8
- lsls r4, 1
- add r4, r9
- ldr r1, _0811B4BC @ =gUnknown_84594C4
- adds r0, r4, 0
- bl DynamicPlaceholderTextUtil_ExpandPlaceholders
- ldr r0, _0811B4C0 @ =gStringVar4
- adds r1, r4, 0
- bl StringCopy
- mov r0, r8
- ldrh r1, [r0, 0x14]
- ldr r4, _0811B4C4 @ =0x0000270f
- cmp r1, r4
- ble _0811B40A
- adds r1, r4, 0
-_0811B40A:
- adds r0, r6, 0
- movs r2, 0
- movs r3, 0x4
- bl ConvertIntToDecimalStringN
- movs r0, 0
- adds r1, r6, 0
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- mov r2, r8
- ldrh r1, [r2, 0x16]
- cmp r1, r4
- ble _0811B426
- adds r1, r4, 0
-_0811B426:
- mov r4, r9
- adds r4, 0xBB
- adds r0, r4, 0
- movs r2, 0
- movs r3, 0x4
- bl ConvertIntToDecimalStringN
- movs r0, 0x2
- adds r1, r4, 0
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- mov r0, r8
- ldrh r1, [r0, 0x20]
- adds r0, r5, 0
- movs r2, 0
- movs r3, 0x5
- bl ConvertIntToDecimalStringN
- movs r0, 0x3
- adds r1, r5, 0
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- movs r7, 0
- movs r6, 0x80
- lsls r6, 19
- mov r5, r8
- adds r5, 0x28
- mov r4, r10
-_0811B45E:
- ldrh r1, [r5]
- adds r0, r4, 0
- bl CopyEasyChatWord
- lsrs r0, r6, 24
- adds r1, r4, 0
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- movs r2, 0x80
- lsls r2, 17
- adds r6, r2
- adds r5, 0x2
- adds r4, 0xF
- adds r7, 0x1
- cmp r7, 0x3
- ble _0811B45E
- movs r4, 0xC8
- lsls r4, 1
- add r4, r9
- ldr r1, _0811B4C8 @ =gUnknown_8459504
- adds r0, r4, 0
- bl DynamicPlaceholderTextUtil_ExpandPlaceholders
- ldr r5, _0811B4C0 @ =gStringVar4
- adds r0, r5, 0
- adds r1, r4, 0
- bl StringAppend
- ldr r0, [sp]
- cmp r0, 0x1
- bne _0811B4D0
- ldr r1, _0811B4CC @ =gUnknown_8459588
- adds r0, r4, 0
- bl DynamicPlaceholderTextUtil_ExpandPlaceholders
- adds r0, r5, 0
- adds r1, r4, 0
- bl StringAppend
- b _0811B4F0
- .align 2, 0
-_0811B4B0: .4byte gTrainerCards
-_0811B4B4: .4byte gTrainerClassNames
-_0811B4B8: .4byte gUnknown_84594B0
-_0811B4BC: .4byte gUnknown_84594C4
-_0811B4C0: .4byte gStringVar4
-_0811B4C4: .4byte 0x0000270f
-_0811B4C8: .4byte gUnknown_8459504
-_0811B4CC: .4byte gUnknown_8459588
-_0811B4D0:
- ldr r2, [sp]
- cmp r2, 0
- bne _0811B4F0
- ldr r0, _0811B500 @ =gUnknown_8459580
- mov r2, r8
- ldrb r1, [r2]
- lsls r1, 2
- adds r1, r0
- ldr r1, [r1]
- adds r0, r4, 0
- bl DynamicPlaceholderTextUtil_ExpandPlaceholders
- adds r0, r5, 0
- adds r1, r4, 0
- bl StringAppend
-_0811B4F0:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811B500: .4byte gUnknown_8459580
- thumb_func_end sub_811B31C
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/union_room_player_avatar.s b/asm/union_room_player_avatar.s
deleted file mode 100644
index 5c6786ae6..000000000
--- a/asm/union_room_player_avatar.s
+++ /dev/null
@@ -1,2064 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start is_walking_or_running
-is_walking_or_running: @ 811B504
- push {lr}
- ldr r0, _0811B518 @ =gPlayerAvatar
- ldrb r0, [r0, 0x3]
- cmp r0, 0x2
- beq _0811B512
- cmp r0, 0
- bne _0811B51C
-_0811B512:
- movs r0, 0x1
- b _0811B51E
- .align 2, 0
-_0811B518: .4byte gPlayerAvatar
-_0811B51C:
- movs r0, 0
-_0811B51E:
- pop {r1}
- bx r1
- thumb_func_end is_walking_or_running
-
- thumb_func_start sub_811B524
-sub_811B524: @ 811B524
- ldr r3, _0811B538 @ =gUnknown_84570D8
- movs r2, 0x7
- ands r2, r1
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 1
- adds r2, r1
- adds r2, r3
- ldrb r0, [r2]
- bx lr
- .align 2, 0
-_0811B538: .4byte gUnknown_84570D8
- thumb_func_end sub_811B524
-
- thumb_func_start sub_811B53C
-sub_811B53C: @ 811B53C
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- ldr r4, _0811B584 @ =gUnknown_84570EC
- mov r8, r4
- lsls r0, 2
- adds r4, r0, r4
- movs r6, 0
- ldrsh r5, [r4, r6]
- ldr r6, _0811B588 @ =gUnknown_845710C
- lsls r1, 1
- adds r4, r1, r6
- ldrb r4, [r4]
- lsls r4, 24
- asrs r4, 24
- adds r5, r4
- adds r5, 0x7
- str r5, [r2]
- movs r2, 0x2
- add r8, r2
- add r0, r8
- movs r4, 0
- ldrsh r0, [r0, r4]
- adds r6, 0x1
- adds r1, r6
- ldrb r1, [r1]
- lsls r1, 24
- asrs r1, 24
- adds r0, r1
- adds r0, 0x7
- str r0, [r3]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811B584: .4byte gUnknown_84570EC
-_0811B588: .4byte gUnknown_845710C
- thumb_func_end sub_811B53C
-
- thumb_func_start sub_811B58C
-sub_811B58C: @ 811B58C
- push {r4-r7,lr}
- mov r12, r3
- ldr r7, _0811B5CC @ =gUnknown_84570EC
- lsls r5, r0, 2
- adds r0, r5, r7
- movs r4, 0
- ldrsh r3, [r0, r4]
- ldr r6, _0811B5D0 @ =gUnknown_845710C
- lsls r4, r1, 1
- adds r0, r4, r6
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- adds r3, r0
- adds r3, 0x7
- cmp r3, r2
- bne _0811B5D4
- adds r0, r7, 0x2
- adds r0, r5, r0
- movs r2, 0
- ldrsh r1, [r0, r2]
- adds r0, r6, 0x1
- adds r0, r4, r0
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- adds r1, r0
- adds r1, 0x7
- cmp r1, r12
- bne _0811B5D4
- movs r0, 0x1
- b _0811B5D6
- .align 2, 0
-_0811B5CC: .4byte gUnknown_84570EC
-_0811B5D0: .4byte gUnknown_845710C
-_0811B5D4:
- movs r0, 0
-_0811B5D6:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_811B58C
-
- thumb_func_start sub_811B5DC
-sub_811B5DC: @ 811B5DC
- push {lr}
- adds r0, 0x63
- lsls r0, 16
- lsrs r0, 16
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end sub_811B5DC
-
- thumb_func_start sub_811B5F0
-sub_811B5F0: @ 811B5F0
- push {lr}
- adds r0, 0x63
- lsls r0, 16
- lsrs r0, 16
- bl FlagSet
- pop {r0}
- bx r0
- thumb_func_end sub_811B5F0
-
- thumb_func_start sub_811B600
-sub_811B600: @ 811B600
- push {lr}
- adds r0, 0x63
- lsls r0, 16
- lsrs r0, 16
- bl FlagClear
- pop {r0}
- bx r0
- thumb_func_end sub_811B600
-
- thumb_func_start sub_811B610
-sub_811B610: @ 811B610
- push {lr}
- ldr r2, _0811B628 @ =0x00004010
- adds r0, r2
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 16
- lsrs r1, 16
- bl VarSet
- pop {r0}
- bx r0
- .align 2, 0
-_0811B628: .4byte 0x00004010
- thumb_func_end sub_811B610
-
- thumb_func_start sub_811B62C
-sub_811B62C: @ 811B62C
- push {lr}
- ldr r1, _0811B644 @ =gUnknown_8457120
- adds r0, r1
- ldrb r0, [r0]
- ldr r1, _0811B648 @ =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- bl show_sprite
- pop {r0}
- bx r0
- .align 2, 0
-_0811B644: .4byte gUnknown_8457120
-_0811B648: .4byte gSaveBlock1Ptr
- thumb_func_end sub_811B62C
-
- thumb_func_start sub_811B64C
-sub_811B64C: @ 811B64C
- push {lr}
- ldr r1, _0811B664 @ =gUnknown_8457120
- adds r0, r1
- ldrb r0, [r0]
- ldr r1, _0811B668 @ =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- bl RemoveObjectEventByLocalIdAndMap
- pop {r0}
- bx r0
- .align 2, 0
-_0811B664: .4byte gUnknown_8457120
-_0811B668: .4byte gSaveBlock1Ptr
- thumb_func_end sub_811B64C
-
- thumb_func_start sub_811B66C
-sub_811B66C: @ 811B66C
- push {r4,r5,lr}
- sub sp, 0x4
- adds r5, r1, 0
- ldr r1, _0811B6B8 @ =gUnknown_8457120
- adds r0, r1
- ldrb r0, [r0]
- ldr r1, _0811B6BC @ =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- mov r3, sp
- bl TryGetObjectEventIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0811B6D0
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0811B6C0 @ =gObjectEvents
- adds r4, r0, r1
- adds r0, r4, 0
- bl ObjectEventIsMovementOverridden
- lsls r0, 24
- cmp r0, 0
- bne _0811B6D0
- ldrb r1, [r5]
- adds r0, r4, 0
- bl ObjectEventSetHeldMovement
- lsls r0, 24
- cmp r0, 0
- bne _0811B6C4
- movs r0, 0x1
- b _0811B6D2
- .align 2, 0
-_0811B6B8: .4byte gUnknown_8457120
-_0811B6BC: .4byte gSaveBlock1Ptr
-_0811B6C0: .4byte gObjectEvents
-_0811B6C4:
- ldr r0, _0811B6DC @ =gUnknown_8457138 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/rfu_union_tool.c"
- ldr r1, _0811B6E0 @ =0x00000183
- ldr r2, _0811B6E4 @ =gUnknown_8457174 "0"
- movs r3, 0x1
- bl AGBAssert
-_0811B6D0:
- movs r0, 0
-_0811B6D2:
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_0811B6DC: .4byte gUnknown_8457138
-_0811B6E0: .4byte 0x00000183
-_0811B6E4: .4byte gUnknown_8457174
- thumb_func_end sub_811B66C
-
- thumb_func_start sub_811B6E8
-sub_811B6E8: @ 811B6E8
- push {r4,lr}
- sub sp, 0x4
- ldr r1, _0811B724 @ =gUnknown_8457120
- adds r0, r1
- ldrb r0, [r0]
- ldr r1, _0811B728 @ =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- mov r3, sp
- bl TryGetObjectEventIdByLocalIdAndMap
- lsls r0, 24
- cmp r0, 0
- bne _0811B748
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0811B72C @ =gObjectEvents
- adds r4, r0, r1
- adds r0, r4, 0
- bl ObjectEventClearHeldMovementIfFinished
- lsls r0, 24
- cmp r0, 0
- bne _0811B730
- movs r0, 0
- b _0811B74A
- .align 2, 0
-_0811B724: .4byte gUnknown_8457120
-_0811B728: .4byte gSaveBlock1Ptr
-_0811B72C: .4byte gObjectEvents
-_0811B730:
- bl ScriptContext2_IsEnabled
- lsls r0, 24
- cmp r0, 0
- bne _0811B742
- adds r0, r4, 0
- bl npc_sync_anim_pause_bits
- b _0811B748
-_0811B742:
- adds r0, r4, 0
- bl FreezeObjectEvent
-_0811B748:
- movs r0, 0x1
-_0811B74A:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811B6E8
-
- thumb_func_start sub_811B754
-sub_811B754: @ 811B754
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _0811B798 @ =gUnknown_203B088
- movs r1, 0
- str r1, [r0]
- ldr r0, _0811B79C @ =gUnknown_203B084
- str r4, [r0]
- cmp r4, 0
- bne _0811B774
- ldr r0, _0811B7A0 @ =gUnknown_8457138 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/rfu_union_tool.c"
- movs r1, 0xDD
- lsls r1, 1
- ldr r2, _0811B7A4 @ =gUnknown_8457178 "UnionObjWork != NULL"
- movs r3, 0x1
- bl AGBAssert
-_0811B774:
- movs r1, 0
- adds r0, r4, 0
- movs r2, 0x7
-_0811B77A:
- strb r1, [r0]
- strb r1, [r0, 0x1]
- strb r1, [r0, 0x2]
- strb r1, [r0, 0x3]
- adds r0, 0x4
- subs r2, 0x1
- cmp r2, 0
- bge _0811B77A
- bl sub_811BA18
- lsls r0, 24
- lsrs r0, 24
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0811B798: .4byte gUnknown_203B088
-_0811B79C: .4byte gUnknown_203B084
-_0811B7A0: .4byte gUnknown_8457138
-_0811B7A4: .4byte gUnknown_8457178
- thumb_func_end sub_811B754
-
- thumb_func_start sub_811B7A8
-sub_811B7A8: @ 811B7A8
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- movs r0, 0
- ldrsb r0, [r5, r0]
- cmp r0, 0
- beq _0811B7BC
- cmp r0, 0x1
- beq _0811B7DC
- b _0811B7FA
-_0811B7BC:
- ldr r1, _0811B7D8 @ =gUnknown_845718D
- adds r0, r4, 0
- bl sub_811B66C
- cmp r0, 0x1
- bne _0811B7FA
- adds r0, r4, 0
- bl sub_811B5F0
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
- b _0811B7FA
- .align 2, 0
-_0811B7D8: .4byte gUnknown_845718D
-_0811B7DC:
- adds r0, r4, 0
- bl sub_811B6E8
- cmp r0, 0
- beq _0811B7FA
- adds r0, r4, 0
- bl sub_811B64C
- adds r0, r4, 0
- bl sub_811B5F0
- movs r0, 0
- strb r0, [r5]
- movs r0, 0x1
- b _0811B7FC
-_0811B7FA:
- movs r0, 0
-_0811B7FC:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_811B7A8
-
- thumb_func_start sub_811B804
-sub_811B804: @ 811B804
- push {r4-r7,lr}
- sub sp, 0x4
- adds r6, r0, 0
- adds r5, r1, 0
- adds r7, r2, 0
- movs r0, 0
- ldrsb r0, [r6, r0]
- cmp r0, 0x2
- beq _0811B8A0
- cmp r0, 0x2
- bgt _0811B820
- cmp r0, 0
- beq _0811B826
- b _0811B8B2
-_0811B820:
- cmp r0, 0x3
- beq _0811B888
- b _0811B8B2
-_0811B826:
- bl is_walking_or_running
- cmp r0, 0
- beq _0811B8B2
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- mov r0, sp
- movs r1, 0
- ldrsh r2, [r0, r1]
- movs r0, 0
- ldrsh r3, [r4, r0]
- adds r0, r5, 0
- movs r1, 0
- bl sub_811B58C
- cmp r0, 0x1
- beq _0811B8B2
- mov r0, sp
- adds r1, r4, 0
- bl plaer_get_pos_including_state_based_drift
- mov r0, sp
- movs r1, 0
- ldrsh r2, [r0, r1]
- movs r0, 0
- ldrsh r3, [r4, r0]
- adds r0, r5, 0
- movs r1, 0
- bl sub_811B58C
- cmp r0, 0x1
- beq _0811B8B2
- ldrb r1, [r7, 0x1]
- adds r0, r5, 0
- bl sub_811B610
- adds r0, r5, 0
- bl sub_811B62C
- adds r0, r5, 0
- bl sub_811B600
- ldrb r0, [r6]
- adds r0, 0x1
- strb r0, [r6]
-_0811B888:
- ldr r1, _0811B89C @ =gUnknown_845718F
- adds r0, r5, 0
- bl sub_811B66C
- cmp r0, 0x1
- bne _0811B8B2
- ldrb r0, [r6]
- adds r0, 0x1
- strb r0, [r6]
- b _0811B8B2
- .align 2, 0
-_0811B89C: .4byte gUnknown_845718F
-_0811B8A0:
- adds r0, r5, 0
- bl sub_811B6E8
- cmp r0, 0
- beq _0811B8B2
- movs r0, 0
- strb r0, [r6]
- movs r0, 0x1
- b _0811B8B4
-_0811B8B2:
- movs r0, 0
-_0811B8B4:
- add sp, 0x4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_811B804
-
- thumb_func_start sub_811B8BC
-sub_811B8BC: @ 811B8BC
- push {r4-r6,lr}
- adds r5, r1, 0
- adds r6, r2, 0
- ldr r1, _0811B8F4 @ =gUnknown_203B084
- lsls r0, 2
- ldr r1, [r1]
- adds r4, r1, r0
- cmp r1, 0
- bne _0811B8DA
- ldr r0, _0811B8F8 @ =gUnknown_8457138 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/rfu_union_tool.c"
- ldr r1, _0811B8FC @ =0x00000231
- ldr r2, _0811B900 @ =gUnknown_8457178 "UnionObjWork != NULL"
- movs r3, 0x1
- bl AGBAssert
-_0811B8DA:
- movs r0, 0x1
- strb r0, [r4, 0x3]
- adds r0, r5, 0
- adds r1, r6, 0
- bl sub_811B524
- strb r0, [r4, 0x1]
- ldrb r0, [r4]
- cmp r0, 0
- beq _0811B904
- movs r0, 0
- b _0811B906
- .align 2, 0
-_0811B8F4: .4byte gUnknown_203B084
-_0811B8F8: .4byte gUnknown_8457138
-_0811B8FC: .4byte 0x00000231
-_0811B900: .4byte gUnknown_8457178
-_0811B904:
- movs r0, 0x1
-_0811B906:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_811B8BC
-
- thumb_func_start sub_811B90C
-sub_811B90C: @ 811B90C
- push {r4,lr}
- ldr r1, _0811B934 @ =gUnknown_203B084
- lsls r0, 2
- ldr r1, [r1]
- adds r4, r1, r0
- cmp r1, 0
- bne _0811B926
- ldr r0, _0811B938 @ =gUnknown_8457138 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/rfu_union_tool.c"
- ldr r1, _0811B93C @ =0x00000241
- ldr r2, _0811B940 @ =gUnknown_8457178 "UnionObjWork != NULL"
- movs r3, 0x1
- bl AGBAssert
-_0811B926:
- movs r0, 0x2
- strb r0, [r4, 0x3]
- ldrb r0, [r4]
- cmp r0, 0x1
- beq _0811B944
- movs r0, 0
- b _0811B946
- .align 2, 0
-_0811B934: .4byte gUnknown_203B084
-_0811B938: .4byte gUnknown_8457138
-_0811B93C: .4byte 0x00000241
-_0811B940: .4byte gUnknown_8457178
-_0811B944:
- movs r0, 0x1
-_0811B946:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811B90C
-
- thumb_func_start sub_811B94C
-sub_811B94C: @ 811B94C
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- ldrb r1, [r4]
- cmp r1, 0x1
- beq _0811B9AE
- cmp r1, 0x1
- bgt _0811B962
- cmp r1, 0
- beq _0811B96C
- b _0811B9CE
-_0811B962:
- cmp r1, 0x2
- beq _0811B978
- cmp r1, 0x3
- beq _0811B9BC
- b _0811B9CE
-_0811B96C:
- ldrb r0, [r4, 0x3]
- cmp r0, 0x1
- bne _0811B9CE
- movs r0, 0x2
- strb r0, [r4]
- strb r1, [r4, 0x2]
-_0811B978:
- adds r0, r5, 0
- movs r1, 0
- bl sub_811BBC8
- adds r1, r0, 0
- cmp r1, 0
- bne _0811B99E
- ldrb r0, [r4, 0x3]
- cmp r0, 0x2
- bne _0811B99E
- strb r1, [r4]
- strb r1, [r4, 0x2]
- adds r0, r5, 0
- bl sub_811B64C
- adds r0, r5, 0
- bl sub_811B5F0
- b _0811B9CE
-_0811B99E:
- adds r0, r4, 0x2
- adds r1, r5, 0
- adds r2, r4, 0
- bl sub_811B804
- cmp r0, 0x1
- bne _0811B9CE
- b _0811B9CC
-_0811B9AE:
- ldrb r0, [r4, 0x3]
- cmp r0, 0x2
- bne _0811B9CE
- movs r1, 0
- movs r0, 0x3
- strb r0, [r4]
- strb r1, [r4, 0x2]
-_0811B9BC:
- adds r0, r4, 0x2
- adds r1, r5, 0
- adds r2, r4, 0
- bl sub_811B7A8
- cmp r0, 0x1
- bne _0811B9CE
- movs r0, 0
-_0811B9CC:
- strb r0, [r4]
-_0811B9CE:
- movs r0, 0
- strb r0, [r4, 0x3]
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811B94C
-
- thumb_func_start sub_811B9D8
-sub_811B9D8: @ 811B9D8
- push {r4,r5,lr}
- ldr r5, _0811BA08 @ =gUnknown_203B084
- ldr r0, [r5]
- cmp r0, 0
- bne _0811B9EE
- ldr r0, _0811BA0C @ =gUnknown_8457138 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/rfu_union_tool.c"
- ldr r1, _0811BA10 @ =0x00000283
- ldr r2, _0811BA14 @ =gUnknown_8457178 "UnionObjWork != NULL"
- movs r3, 0x1
- bl AGBAssert
-_0811B9EE:
- movs r4, 0
-_0811B9F0:
- lsls r0, r4, 2
- ldr r1, [r5]
- adds r1, r0
- adds r0, r4, 0
- bl sub_811B94C
- adds r4, 0x1
- cmp r4, 0x7
- ble _0811B9F0
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0811BA08: .4byte gUnknown_203B084
-_0811BA0C: .4byte gUnknown_8457138
-_0811BA10: .4byte 0x00000283
-_0811BA14: .4byte gUnknown_8457178
- thumb_func_end sub_811B9D8
-
- thumb_func_start sub_811BA18
-sub_811BA18: @ 811BA18
- push {r4,lr}
- ldr r4, _0811BA38 @ =sub_811B9D8
- adds r0, r4, 0
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0811BA3C
- adds r0, r4, 0
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- b _0811BA4A
- .align 2, 0
-_0811BA38: .4byte sub_811B9D8
-_0811BA3C:
- ldr r0, _0811BA50 @ =gUnknown_8457138 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/rfu_union_tool.c"
- ldr r1, _0811BA54 @ =0x0000028f
- ldr r2, _0811BA58 @ =gUnknown_8457174 "0"
- movs r3, 0x1
- bl AGBAssert
- movs r0, 0x10
-_0811BA4A:
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0811BA50: .4byte gUnknown_8457138
-_0811BA54: .4byte 0x0000028f
-_0811BA58: .4byte gUnknown_8457174
- thumb_func_end sub_811BA18
-
- thumb_func_start sub_811BA5C
-sub_811BA5C: @ 811BA5C
- push {lr}
- ldr r0, _0811BA74 @ =sub_811B9D8
- bl FindTaskIdByFunc
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xF
- bhi _0811BA70
- bl DestroyTask
-_0811BA70:
- pop {r0}
- bx r0
- .align 2, 0
-_0811BA74: .4byte sub_811B9D8
- thumb_func_end sub_811BA5C
-
- thumb_func_start sub_811BA78
-sub_811BA78: @ 811BA78
- push {r4,lr}
- movs r4, 0
-_0811BA7C:
- adds r0, r4, 0
- bl sub_811B5DC
- cmp r0, 0
- bne _0811BA92
- adds r0, r4, 0
- bl sub_811B64C
- adds r0, r4, 0
- bl sub_811B5F0
-_0811BA92:
- adds r4, 0x1
- cmp r4, 0x7
- ble _0811BA7C
- ldr r1, _0811BAA8 @ =gUnknown_203B084
- movs r0, 0
- str r0, [r1]
- bl sub_811BA5C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0811BAA8: .4byte gUnknown_203B084
- thumb_func_end sub_811BA78
-
- thumb_func_start sub_811BAAC
-sub_811BAAC: @ 811BAAC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- str r0, [sp, 0x8]
- mov r9, r1
- movs r7, 0
- mov r0, r9
- lsls r0, 2
- mov r8, r0
- ldr r0, _0811BB38 @ =gUnknown_84570EC
- mov r2, r8
- adds r1, r2, r0
- ldrh r1, [r1]
- mov r2, sp
- strh r1, [r2, 0xC]
- adds r0, 0x2
- add r0, r8
- ldrh r0, [r0]
- mov r10, r0
- ldr r6, _0811BB3C @ =gUnknown_845710C
-_0811BADA:
- mov r5, r8
- add r5, r9
- adds r5, r7
- adds r4, r5, 0
- subs r4, 0x38
- lsls r4, 24
- lsrs r4, 24
- movs r2, 0
- ldrsb r2, [r6, r2]
- mov r0, sp
- ldrh r0, [r0, 0xC]
- adds r2, r0, r2
- lsls r2, 16
- asrs r2, 16
- movs r3, 0x1
- ldrsb r3, [r6, r3]
- add r3, r10
- lsls r3, 16
- asrs r3, 16
- movs r0, 0x3
- str r0, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- movs r0, 0x19
- adds r1, r4, 0
- bl sprite_new
- ldr r1, [sp, 0x8]
- adds r5, r1, r5
- strb r0, [r5]
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_8069124
- adds r6, 0x2
- adds r7, 0x1
- cmp r7, 0x4
- ble _0811BADA
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811BB38: .4byte gUnknown_84570EC
-_0811BB3C: .4byte gUnknown_845710C
- thumb_func_end sub_811BAAC
-
- thumb_func_start sub_811BB40
-sub_811BB40: @ 811BB40
- push {r4-r6,lr}
- adds r5, r0, 0
- movs r4, 0
- ldr r6, _0811BB64 @ =gSprites
-_0811BB48:
- adds r0, r5, r4
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- bl DestroySprite
- adds r4, 0x1
- cmp r4, 0x27
- ble _0811BB48
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811BB64: .4byte gSprites
- thumb_func_end sub_811BB40
-
- thumb_func_start sub_811BB68
-sub_811BB68: @ 811BB68
- push {r4-r7,lr}
- sub sp, 0x8
- movs r5, 0
- add r7, sp, 0x4
-_0811BB70:
- movs r4, 0
- adds r6, r5, 0x1
-_0811BB74:
- adds r0, r5, 0
- adds r1, r4, 0
- mov r2, sp
- adds r3, r7, 0
- bl sub_811B53C
- ldr r0, [sp]
- ldr r1, [sp, 0x4]
- movs r2, 0
- bl sub_8059024
- adds r4, 0x1
- cmp r4, 0x4
- ble _0811BB74
- adds r5, r6, 0
- cmp r5, 0x7
- ble _0811BB70
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_811BB68
-
- thumb_func_start sub_811BBA0
-sub_811BBA0: @ 811BBA0
- push {lr}
- adds r1, r0, 0
- cmp r1, 0
- beq _0811BBB4
- ldr r0, _0811BBB0 @ =gUnknown_845711B
- adds r0, r1, r0
- ldrb r0, [r0]
- b _0811BBC4
- .align 2, 0
-_0811BBB0: .4byte gUnknown_845711B
-_0811BBB4:
- ldrb r1, [r2, 0xA]
- movs r0, 0x7F
- ands r0, r1
- cmp r0, 0x45
- beq _0811BBC2
- movs r0, 0x4
- b _0811BBC4
-_0811BBC2:
- movs r0, 0x1
-_0811BBC4:
- pop {r1}
- bx r1
- thumb_func_end sub_811BBA0
-
- thumb_func_start sub_811BBC8
-sub_811BBC8: @ 811BBC8
- push {lr}
- adds r2, r0, 0
- lsls r0, r2, 2
- adds r0, r2
- adds r0, r1
- subs r0, 0x38
- lsls r0, 24
- lsrs r0, 24
- bl sub_806916C
- pop {r1}
- bx r1
- thumb_func_end sub_811BBC8
-
- thumb_func_start sub_811BBE0
-sub_811BBE0: @ 811BBE0
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x8
- adds r5, r0, 0
- adds r6, r1, 0
- mov r9, r3
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- lsls r0, r5, 2
- adds r0, r5
- adds r7, r0, r6
- adds r0, r5, 0
- bl sub_811BBC8
- cmp r0, 0x1
- bne _0811BC1E
- adds r4, r7, 0
- subs r4, 0x38
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0
- bl sub_8069124
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_80691A4
-_0811BC1E:
- adds r0, r7, 0
- subs r0, 0x38
- lsls r0, 24
- lsrs r0, 24
- mov r1, r8
- bl sub_8069094
- adds r0, r6, 0
- adds r1, r5, 0
- mov r2, r9
- bl sub_811BBA0
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r6, 0
- adds r1, r5, 0
- bl sub_811C008
- add r3, sp, 0x4
- adds r0, r5, 0
- adds r1, r6, 0
- mov r2, sp
- bl sub_811B53C
- ldr r0, [sp]
- ldr r1, [sp, 0x4]
- movs r2, 0x1
- bl sub_8059024
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_811BBE0
-
- thumb_func_start sub_811BC68
-sub_811BC68: @ 811BC68
- push {r4,r5,lr}
- sub sp, 0x8
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r0, r4, 2
- adds r0, r4
- adds r0, r5
- subs r0, 0x38
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x2
- bl sub_80691A4
- add r3, sp, 0x4
- adds r0, r4, 0
- adds r1, r5, 0
- mov r2, sp
- bl sub_811B53C
- ldr r0, [sp]
- ldr r1, [sp, 0x4]
- movs r2, 0
- bl sub_8059024
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811BC68
-
- thumb_func_start sub_811BCA0
-sub_811BCA0: @ 811BCA0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- adds r7, r0, 0
- mov r8, r1
- mov r6, sp
- adds r6, 0x2
- mov r0, sp
- adds r1, r6, 0
- bl PlayerGetDestCoords
- add r4, sp, 0x4
- mov r5, sp
- adds r5, 0x6
- adds r0, r4, 0
- adds r1, r5, 0
- bl plaer_get_pos_including_state_based_drift
- lsls r0, r7, 2
- adds r0, r7
- subs r0, 0x38
- lsls r0, 24
- lsrs r0, 24
- bl sub_806916C
- mov r10, r6
- mov r9, r4
- adds r6, r5, 0
- cmp r0, 0x1
- bne _0811BD2C
- mov r0, sp
- movs r1, 0
- ldrsh r2, [r0, r1]
- mov r0, r10
- movs r1, 0
- ldrsh r3, [r0, r1]
- adds r0, r7, 0
- movs r1, 0
- bl sub_811B58C
- cmp r0, 0x1
- beq _0811BD98
- movs r0, 0
- ldrsh r2, [r4, r0]
- movs r1, 0
- ldrsh r3, [r6, r1]
- adds r0, r7, 0
- movs r1, 0
- bl sub_811B58C
- cmp r0, 0x1
- beq _0811BD98
- mov r2, r8
- ldrb r0, [r2, 0xB]
- lsls r0, 31
- lsrs r0, 31
- ldrb r1, [r2, 0x2]
- bl sub_811B524
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r7, 0
- movs r1, 0
- mov r3, r8
- bl sub_811BBE0
-_0811BD2C:
- movs r5, 0x1
- mov r4, r8
- adds r4, 0x4
-_0811BD32:
- ldrb r0, [r4]
- cmp r0, 0
- bne _0811BD42
- adds r0, r7, 0
- adds r1, r5, 0
- bl sub_811BC68
- b _0811BD90
-_0811BD42:
- mov r0, sp
- movs r1, 0
- ldrsh r2, [r0, r1]
- mov r0, r10
- movs r1, 0
- ldrsh r3, [r0, r1]
- adds r0, r7, 0
- adds r1, r5, 0
- bl sub_811B58C
- cmp r0, 0
- bne _0811BD90
- mov r0, r9
- movs r1, 0
- ldrsh r2, [r0, r1]
- movs r0, 0
- ldrsh r3, [r6, r0]
- adds r0, r7, 0
- adds r1, r5, 0
- bl sub_811B58C
- cmp r0, 0
- bne _0811BD90
- ldrb r2, [r4]
- lsrs r0, r2, 3
- movs r1, 0x1
- ands r0, r1
- movs r1, 0x7
- ands r1, r2
- bl sub_811B524
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r7, 0
- adds r1, r5, 0
- mov r3, r8
- bl sub_811BBE0
-_0811BD90:
- adds r4, 0x1
- adds r5, 0x1
- cmp r5, 0x4
- ble _0811BD32
-_0811BD98:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_811BCA0
-
- thumb_func_start sub_811BDA8
-sub_811BDA8: @ 811BDA8
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- ldrb r0, [r4, 0xA]
- lsls r0, 25
- lsrs r0, 25
- subs r0, 0x40
- cmp r0, 0x14
- bhi _0811BE4C
- lsls r0, 2
- ldr r1, _0811BDC4 @ =_0811BDC8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0811BDC4: .4byte _0811BDC8
- .align 2, 0
-_0811BDC8:
- .4byte _0811BE1C
- .4byte _0811BE3C
- .4byte _0811BE4C
- .4byte _0811BE4C
- .4byte _0811BE3C
- .4byte _0811BE3C
- .4byte _0811BE4C
- .4byte _0811BE4C
- .4byte _0811BE3C
- .4byte _0811BE4C
- .4byte _0811BE4C
- .4byte _0811BE4C
- .4byte _0811BE4C
- .4byte _0811BE4C
- .4byte _0811BE4C
- .4byte _0811BE4C
- .4byte _0811BE4C
- .4byte _0811BE3C
- .4byte _0811BE3C
- .4byte _0811BE3C
- .4byte _0811BE1C
-_0811BE1C:
- ldrb r1, [r4, 0xB]
- lsls r1, 31
- lsrs r1, 31
- ldrb r2, [r4, 0x2]
- adds r0, r5, 0
- bl sub_811B8BC
- movs r4, 0
-_0811BE2C:
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_811BC68
- adds r4, 0x1
- cmp r4, 0x4
- bls _0811BE2C
- b _0811BE58
-_0811BE3C:
- adds r0, r5, 0
- bl sub_811B90C
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_811BCA0
- b _0811BE58
-_0811BE4C:
- ldr r0, _0811BE60 @ =gUnknown_8457138 "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/rfu_union_tool.c"
- ldr r1, _0811BE64 @ =0x000003d3
- ldr r2, _0811BE68 @ =gUnknown_8457174 "0"
- movs r3, 0x1
- bl AGBAssert
-_0811BE58:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0811BE60: .4byte gUnknown_8457138
-_0811BE64: .4byte 0x000003d3
-_0811BE68: .4byte gUnknown_8457174
- thumb_func_end sub_811BDA8
-
- thumb_func_start sub_811BE6C
-sub_811BE6C: @ 811BE6C
- push {r4,r5,lr}
- adds r5, r0, 0
- bl sub_811B90C
- movs r4, 0
-_0811BE76:
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_811BC68
- adds r4, 0x1
- cmp r4, 0x4
- ble _0811BE76
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811BE6C
-
- thumb_func_start sub_811BE8C
-sub_811BE8C: @ 811BE8C
- push {r4,r5,lr}
- ldr r2, _0811BEAC @ =gUnknown_203B088
- movs r1, 0
- str r1, [r2]
- movs r5, 0
- ldr r4, [r0]
-_0811BE98:
- ldrb r0, [r4, 0x1A]
- movs r1, 0x3
- ands r1, r0
- cmp r1, 0x1
- bne _0811BEB0
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_811BDA8
- b _0811BEBC
- .align 2, 0
-_0811BEAC: .4byte gUnknown_203B088
-_0811BEB0:
- cmp r1, 0x2
- bne _0811BEBC
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_811BE6C
-_0811BEBC:
- adds r4, 0x20
- adds r5, 0x1
- cmp r5, 0x7
- ble _0811BE98
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811BE8C
-
- thumb_func_start sub_811BECC
-sub_811BECC: @ 811BECC
- ldr r1, _0811BED8 @ =gUnknown_203B088
- movs r0, 0x96
- lsls r0, 1
- str r0, [r1]
- bx lr
- .align 2, 0
-_0811BED8: .4byte gUnknown_203B088
- thumb_func_end sub_811BECC
-
- thumb_func_start sub_811BEDC
-sub_811BEDC: @ 811BEDC
- push {lr}
- adds r2, r0, 0
- ldr r0, _0811BEFC @ =gUnknown_203B088
- ldr r1, [r0]
- adds r1, 0x1
- str r1, [r0]
- movs r0, 0x96
- lsls r0, 1
- cmp r1, r0
- bls _0811BEF6
- adds r0, r2, 0
- bl sub_811BE8C
-_0811BEF6:
- pop {r0}
- bx r0
- .align 2, 0
-_0811BEFC: .4byte gUnknown_203B088
- thumb_func_end sub_811BEDC
-
- thumb_func_start sub_811BF00
-sub_811BF00: @ 811BF00
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x18
- adds r5, r0, 0
- str r1, [sp, 0x4]
- str r2, [sp, 0x8]
- bl is_walking_or_running
- cmp r0, 0
- bne _0811BF48
- b _0811BFEE
-_0811BF1C:
- ldr r4, _0811BF44 @ =gUnknown_8457116
- bl GetPlayerFacingDirection
- lsls r0, 24
- lsrs r0, 24
- adds r0, r4
- ldrb r2, [r0]
- adds r0, r6, 0
- ldr r1, [sp, 0xC]
- bl sub_811C008
- ldr r0, [sp, 0x4]
- strh r6, [r0]
- mov r1, sp
- ldrh r2, [r1, 0xC]
- ldr r1, [sp, 0x8]
- strh r2, [r1]
- movs r0, 0x1
- b _0811BFF0
- .align 2, 0
-_0811BF44: .4byte gUnknown_8457116
-_0811BF48:
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl GetXYCoordsOneStepInFrontOfPlayer
- movs r0, 0
- str r0, [sp, 0xC]
- ldr r0, _0811C000 @ =gUnknown_84570EC
- adds r7, r5, 0
- movs r1, 0
- mov r10, r1
- adds r2, r0, 0x2
- str r2, [sp, 0x10]
- str r0, [sp, 0x14]
-_0811BF66:
- movs r6, 0
- ldr r4, [sp, 0x14]
- movs r0, 0
- ldrsh r4, [r4, r0]
- mov r9, r4
- ldr r1, [sp, 0x10]
- mov r8, r1
- ldr r5, _0811C004 @ =gUnknown_845710C
-_0811BF76:
- mov r2, r10
- adds r3, r2, r6
- mov r0, sp
- movs r4, 0
- ldrsh r1, [r0, r4]
- movs r0, 0
- ldrsb r0, [r5, r0]
- add r0, r9
- adds r0, 0x7
- cmp r1, r0
- bne _0811BFCA
- mov r1, sp
- movs r2, 0x2
- ldrsh r0, [r1, r2]
- mov r4, r8
- movs r2, 0
- ldrsh r1, [r4, r2]
- movs r2, 0x1
- ldrsb r2, [r5, r2]
- adds r1, r2
- adds r1, 0x7
- cmp r0, r1
- bne _0811BFCA
- adds r0, r3, 0
- subs r0, 0x38
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_806916C
- cmp r0, 0
- bne _0811BFCA
- adds r0, r4, 0
- bl sub_8069294
- cmp r0, 0
- bne _0811BFCA
- ldrb r1, [r7, 0x1A]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0x1
- beq _0811BF1C
-_0811BFCA:
- adds r5, 0x2
- adds r6, 0x1
- cmp r6, 0x4
- ble _0811BF76
- adds r7, 0x20
- movs r4, 0x5
- add r10, r4
- ldr r0, [sp, 0x10]
- adds r0, 0x4
- str r0, [sp, 0x10]
- ldr r1, [sp, 0x14]
- adds r1, 0x4
- str r1, [sp, 0x14]
- ldr r2, [sp, 0xC]
- adds r2, 0x1
- str r2, [sp, 0xC]
- cmp r2, 0x7
- ble _0811BF66
-_0811BFEE:
- movs r0, 0
-_0811BFF0:
- add sp, 0x18
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0811C000: .4byte gUnknown_84570EC
-_0811C004: .4byte gUnknown_845710C
- thumb_func_end sub_811BF00
-
- thumb_func_start sub_811C008
-sub_811C008: @ 811C008
- push {r4,lr}
- adds r4, r0, 0
- adds r3, r1, 0
- lsls r1, r2, 24
- lsrs r1, 24
- lsls r0, r3, 2
- adds r0, r3
- subs r0, 0x38
- adds r0, r4
- lsls r0, 24
- lsrs r0, 24
- bl sub_8069058
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_811C008
-
- thumb_func_start sub_811C028
-sub_811C028: @ 811C028
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- lsls r3, r4, 5
- adds r3, r2
- adds r2, r3, 0
- bl sub_811BBA0
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_811C008
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811C028
-
- thumb_func_start sub_811C04C
-sub_811C04C: @ 811C04C
- push {r4-r7,lr}
- movs r0, 0xA
- bl sub_81173C0
- movs r4, 0
- movs r7, 0x64
- ldr r6, _0811C0CC @ =gPlayerParty
- ldr r5, _0811C0D0 @ =gEnemyParty
-_0811C05C:
- ldr r0, _0811C0D4 @ =gSelectedOrderFromParty
- adds r0, r4, r0
- ldrb r0, [r0]
- subs r0, 0x1
- adds r1, r0, 0
- muls r1, r7
- adds r1, r6
- adds r0, r5, 0
- movs r2, 0x64
- bl memcpy
- adds r5, 0x64
- adds r4, 0x1
- cmp r4, 0x1
- ble _0811C05C
- ldr r4, _0811C0CC @ =gPlayerParty
- movs r0, 0xFA
- lsls r0, 1
- adds r5, r4, r0
-_0811C082:
- adds r0, r4, 0
- bl ZeroMonData
- adds r4, 0x64
- cmp r4, r5
- ble _0811C082
- ldr r4, _0811C0CC @ =gPlayerParty
- movs r5, 0
- adds r6, r4, 0
- adds r6, 0x64
-_0811C096:
- ldr r1, _0811C0D0 @ =gEnemyParty
- adds r1, r5, r1
- adds r0, r4, 0
- movs r2, 0x64
- bl memcpy
- adds r4, 0x64
- adds r5, 0x64
- cmp r4, r6
- ble _0811C096
- movs r0, 0x32
- bl IncrementGameStat
- bl CalculatePlayerPartyCount
- ldr r0, _0811C0D8 @ =gTrainerBattleOpponent_A
- movs r2, 0xC0
- lsls r2, 4
- adds r1, r2, 0
- strh r1, [r0]
- ldr r0, _0811C0DC @ =CB2_InitBattle
- bl SetMainCallback2
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811C0CC: .4byte gPlayerParty
-_0811C0D0: .4byte gEnemyParty
-_0811C0D4: .4byte gSelectedOrderFromParty
-_0811C0D8: .4byte gTrainerBattleOpponent_A
-_0811C0DC: .4byte CB2_InitBattle
- thumb_func_end sub_811C04C
-
- thumb_func_start sub_811C0E0
-sub_811C0E0: @ 811C0E0
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- sub sp, 0x18
- adds r5, r0, 0
- mov r10, r1
- adds r6, r2, 0
- ldr r4, [sp, 0x34]
- lsls r5, 24
- lsrs r5, 24
- lsls r6, 24
- lsrs r6, 24
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0x1
- mov r8, r0
- ldr r1, _0811C14C @ =gUnknown_84571A8
- mov r9, r1
- ldrb r0, [r1]
- lsls r1, r0, 4
- orrs r1, r0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- str r3, [sp, 0x14]
- bl FillWindowPixelBuffer
- mov r0, r8
- str r0, [sp]
- str r0, [sp, 0x4]
- mov r1, r9
- str r1, [sp, 0x8]
- lsls r4, 24
- asrs r4, 24
- str r4, [sp, 0xC]
- mov r0, r10
- str r0, [sp, 0x10]
- adds r0, r5, 0
- movs r1, 0x3
- adds r2, r6, 0
- ldr r3, [sp, 0x14]
- bl AddTextPrinterParameterized4
- add sp, 0x18
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811C14C: .4byte gUnknown_84571A8
- thumb_func_end sub_811C0E0
-
- thumb_func_start sub_811C150
-sub_811C150: @ 811C150
- push {r4-r6,lr}
- sub sp, 0x4
- adds r4, r0, 0
- adds r6, r1, 0
- adds r5, r2, 0
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _0811C168
- cmp r0, 0x1
- beq _0811C196
- b _0811C1AA
-_0811C168:
- movs r0, 0
- movs r1, 0x1
- movs r2, 0xD
- bl DrawTextBorderOuter
- str r5, [sp]
- movs r0, 0
- adds r1, r6, 0
- movs r2, 0
- movs r3, 0x2
- bl sub_811C0E0
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _0811C1AA
-_0811C196:
- movs r0, 0
- bl IsTextPrinterActive
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _0811C1AA
- strh r0, [r4]
- movs r0, 0x1
- b _0811C1AC
-_0811C1AA:
- movs r0, 0
-_0811C1AC:
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_811C150
-
- thumb_func_start sub_811C1B4
-sub_811C1B4: @ 811C1B4
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_811C1B4
-
- thumb_func_start sub_811C1C8
-sub_811C1C8: @ 811C1C8
- push {r4,lr}
- sub sp, 0xC
- ldr r1, _0811C1E8 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x33
- bls _0811C1DE
- b _0811C516
-_0811C1DE:
- lsls r0, 2
- ldr r1, _0811C1EC @ =_0811C1F0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0811C1E8: .4byte gMain
-_0811C1EC: .4byte _0811C1F0
- .align 2, 0
-_0811C1F0:
- .4byte _0811C2C0
- .4byte _0811C364
- .4byte _0811C38C
- .4byte _0811C3B0
- .4byte _0811C400
- .4byte _0811C516
- .4byte _0811C4E4
- .4byte _0811C4C0
- .4byte _0811C4E4
- .4byte _0811C500
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C516
- .4byte _0811C48C
- .4byte _0811C4A8
-_0811C2C0:
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- ldr r4, _0811C350 @ =gUnknown_203B08C
- movs r0, 0x4
- bl AllocZeroed
- str r0, [r4]
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- bl ResetTasks
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, _0811C354 @ =gUnknown_8457194
- movs r0, 0
- movs r2, 0x1
- bl InitBgsFromTemplates
- bl ResetTempTileDataBuffers
- ldr r0, _0811C358 @ =gUnknown_8457198
- bl InitWindows
- lsls r0, 16
- cmp r0, 0
- bne _0811C300
- b _0811C52A
-_0811C300:
- bl DeactivateAllTextPrinters
- movs r0, 0
- bl ClearWindowTilemap
- movs r0, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0
- movs r1, 0x11
- bl FillWindowPixelBuffer
- movs r0, 0x1E
- str r0, [sp]
- movs r0, 0x14
- str r0, [sp, 0x4]
- movs r0, 0xF
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect
- movs r0, 0
- movs r1, 0x1
- movs r2, 0xD0
- bl TextWindow_SetStdFrame0_WithPal
- bl Menu_LoadStdPal
- ldr r0, _0811C35C @ =sub_811C1B4
- bl SetVBlankCallback
- ldr r1, _0811C360 @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _0811C4F2
- .align 2, 0
-_0811C350: .4byte gUnknown_203B08C
-_0811C354: .4byte gUnknown_8457194
-_0811C358: .4byte gUnknown_8457198
-_0811C35C: .4byte sub_811C1B4
-_0811C360: .4byte gMain
-_0811C364:
- ldr r0, _0811C380 @ =gUnknown_203B08C
- ldr r0, [r0]
- ldr r1, _0811C384 @ =gUnknown_841E538
- movs r2, 0
- bl sub_811C150
- cmp r0, 0
- bne _0811C376
- b _0811C516
-_0811C376:
- ldr r1, _0811C388 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _0811C4F2
- .align 2, 0
-_0811C380: .4byte gUnknown_203B08C
-_0811C384: .4byte gUnknown_841E538
-_0811C388: .4byte gMain
-_0811C38C:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- movs r0, 0
- bl ShowBg
- ldr r1, _0811C3AC @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _0811C4F2
- .align 2, 0
-_0811C3AC: .4byte gMain
-_0811C3B0:
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- beq _0811C3BC
- b _0811C516
-_0811C3BC:
- ldr r4, _0811C3D8 @ =gBlockSendBuffer
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x20
- bl memset
- ldr r0, _0811C3DC @ =gSelectedOrderFromParty
- ldrb r1, [r0]
- ldrb r0, [r0, 0x1]
- cmn r1, r0
- bne _0811C3E0
- movs r0, 0x52
- b _0811C3E2
- .align 2, 0
-_0811C3D8: .4byte gBlockSendBuffer
-_0811C3DC: .4byte gSelectedOrderFromParty
-_0811C3E0:
- movs r0, 0x51
-_0811C3E2:
- strb r0, [r4]
- ldr r1, _0811C3F8 @ =gBlockSendBuffer
- movs r0, 0
- movs r2, 0x20
- bl SendBlock
- ldr r1, _0811C3FC @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _0811C4F2
- .align 2, 0
-_0811C3F8: .4byte gBlockSendBuffer
-_0811C3FC: .4byte gMain
-_0811C400:
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _0811C40E
- b _0811C516
-_0811C40E:
- ldr r1, _0811C440 @ =gBlockRecvBuffer
- ldrh r0, [r1]
- cmp r0, 0x51
- bne _0811C448
- movs r2, 0x80
- lsls r2, 1
- adds r0, r1, r2
- ldrh r0, [r0]
- cmp r0, 0x51
- bne _0811C448
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _0811C444 @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- movs r1, 0x32
- b _0811C47E
- .align 2, 0
-_0811C440: .4byte gBlockRecvBuffer
-_0811C444: .4byte gMain
-_0811C448:
- bl sub_800AAC0
- ldr r4, _0811C46C @ =gBlockRecvBuffer
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r0, 16
- adds r0, r4
- ldrh r0, [r0]
- cmp r0, 0x52
- bne _0811C474
- ldr r0, _0811C470 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r2
- movs r1, 0x6
- b _0811C47E
- .align 2, 0
-_0811C46C: .4byte gBlockRecvBuffer
-_0811C470: .4byte gMain
-_0811C474:
- ldr r0, _0811C488 @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- movs r1, 0x8
-_0811C47E:
- strb r1, [r0]
- bl ResetBlockReceivedFlags
- b _0811C516
- .align 2, 0
-_0811C488: .4byte gMain
-_0811C48C:
- bl UpdatePaletteFade
- lsls r0, 24
- cmp r0, 0
- bne _0811C516
- bl sub_800AB9C
- ldr r1, _0811C4A4 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _0811C4F2
- .align 2, 0
-_0811C4A4: .4byte gMain
-_0811C4A8:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _0811C516
- ldr r0, _0811C4BC @ =sub_811C04C
- bl SetMainCallback2
- b _0811C516
- .align 2, 0
-_0811C4BC: .4byte sub_811C04C
-_0811C4C0:
- ldr r0, _0811C4D8 @ =gUnknown_203B08C
- ldr r0, [r0]
- ldr r1, _0811C4DC @ =gUnknown_841E58D
- movs r2, 0x1
- bl sub_811C150
- cmp r0, 0
- beq _0811C516
- ldr r0, _0811C4E0 @ =CB2_ReturnToField
- bl SetMainCallback2
- b _0811C516
- .align 2, 0
-_0811C4D8: .4byte gUnknown_203B08C
-_0811C4DC: .4byte gUnknown_841E58D
-_0811C4E0: .4byte CB2_ReturnToField
-_0811C4E4:
- ldr r0, _0811C4FC @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _0811C516
- movs r0, 0x87
- lsls r0, 3
- adds r1, r2, r0
-_0811C4F2:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _0811C516
- .align 2, 0
-_0811C4FC: .4byte gReceivedRemoteLinkPlayers
-_0811C500:
- ldr r0, _0811C534 @ =gUnknown_203B08C
- ldr r0, [r0]
- ldr r1, _0811C538 @ =gUnknown_841E572
- movs r2, 0x1
- bl sub_811C150
- cmp r0, 0
- beq _0811C516
- ldr r0, _0811C53C @ =CB2_ReturnToField
- bl SetMainCallback2
-_0811C516:
- bl RunTasks
- bl RunTextPrinters
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
-_0811C52A:
- add sp, 0xC
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0811C534: .4byte gUnknown_203B08C
-_0811C538: .4byte gUnknown_841E572
-_0811C53C: .4byte CB2_ReturnToField
- thumb_func_end sub_811C1C8
-
- .align 2, 0 @ Don't pad with nop.