summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/battle_tower.s4
-rw-r--r--asm/cable_club.s12
-rw-r--r--asm/evolution_scene.s34
-rw-r--r--asm/link_rfu_3.s14
-rw-r--r--asm/party_menu.s32
-rw-r--r--asm/pokeball.s6
-rw-r--r--asm/pokemon_storage_system.s12
-rw-r--r--asm/pokemon_summary_screen.s10
-rw-r--r--asm/trade.s15329
-rw-r--r--asm/union_room_chat.s4
10 files changed, 64 insertions, 15393 deletions
diff --git a/asm/battle_tower.s b/asm/battle_tower.s
index eddc03f83..fe6aac664 100644
--- a/asm/battle_tower.s
+++ b/asm/battle_tower.s
@@ -2832,7 +2832,7 @@ _080E6F68:
ldrb r1, [r0]
movs r0, 0x64
muls r0, r1
- ldr r1, _080E6FB4 @ =gUnknown_2024220
+ ldr r1, _080E6FB4 @ =gEnemyParty + 500 @ &gEnemyParty[5]
adds r0, r1
movs r1, 0x2C
muls r1, r4
@@ -2855,7 +2855,7 @@ _080E6FA4: .4byte gSaveBlock2Ptr
_080E6FA8: .4byte gSaveBlock1Ptr
_080E6FAC: .4byte 0x00002cac
_080E6FB0: .4byte 0x0000056d
-_080E6FB4: .4byte gUnknown_2024220
+_080E6FB4: .4byte gEnemyParty + 500 @ &gEnemyParty[5]
thumb_func_end sub_80E6EE0
thumb_func_start SaveBattleTowerProgress
diff --git a/asm/cable_club.s b/asm/cable_club.s
index 01aa8d217..d19bb3a35 100644
--- a/asm/cable_club.s
+++ b/asm/cable_club.s
@@ -2193,7 +2193,7 @@ _08081894:
.align 2, 0
_080818A4: .4byte gPaletteFade
_080818A8:
- ldr r1, _080818C0 @ =gUnknown_2031DA4
+ ldr r1, _080818C0 @ =gSelectedTradeMonPositions
movs r0, 0
strb r0, [r1]
strb r0, [r1, 0x1]
@@ -2205,13 +2205,13 @@ _080818B8:
strh r0, [r4, 0x8]
b _080818D8
.align 2, 0
-_080818C0: .4byte gUnknown_2031DA4
+_080818C0: .4byte gSelectedTradeMonPositions
_080818C4:
ldr r0, _080818E0 @ =gReceivedRemoteLinkPlayers
ldrb r0, [r0]
cmp r0, 0
bne _080818D8
- ldr r0, _080818E4 @ =sub_804C718
+ ldr r0, _080818E4 @ =CB2_ReturnFromLinkTrade
bl SetMainCallback2
adds r0, r5, 0
bl DestroyTask
@@ -2221,7 +2221,7 @@ _080818D8:
bx r0
.align 2, 0
_080818E0: .4byte gReceivedRemoteLinkPlayers
-_080818E4: .4byte sub_804C718
+_080818E4: .4byte CB2_ReturnFromLinkTrade
thumb_func_end sub_8081850
thumb_func_start sub_80818E8
@@ -2269,7 +2269,7 @@ _0808192C:
.align 2, 0
_0808193C: .4byte gPaletteFade
_08081940:
- ldr r1, _08081958 @ =gUnknown_2031DA4
+ ldr r1, _08081958 @ =gSelectedTradeMonPositions
movs r0, 0
strb r0, [r1]
strb r0, [r1, 0x1]
@@ -2281,7 +2281,7 @@ _08081950:
strh r0, [r4]
b _08081970
.align 2, 0
-_08081958: .4byte gUnknown_2031DA4
+_08081958: .4byte gSelectedTradeMonPositions
_0808195C:
bl IsLinkTaskFinished
lsls r0, 24
diff --git a/asm/evolution_scene.s b/asm/evolution_scene.s
index b718deee6..dac85320e 100644
--- a/asm/evolution_scene.s
+++ b/asm/evolution_scene.s
@@ -738,7 +738,7 @@ _080CE3D8: .4byte nullsub_76
_080CE3DC: .4byte sub_80D00D8
_080CE3E0: .4byte gMain
_080CE3E4:
- bl sub_80544FC
+ bl LoadTradeAnimGfx
b _080CE4EC
_080CE3EA:
movs r0, 0x20
@@ -2817,7 +2817,7 @@ _080CF620:
movs r0, 0
adds r1, r4, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r0, _080CF648 @ =gTasks
adds r1, r7, r6
lsls r1, 3
@@ -3110,7 +3110,7 @@ _080CF8A8:
movs r0, 0
adds r1, r4, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r0, _080CF91C @ =0x00000103
bl PlayFanfare
ldr r2, _080CF920 @ =gTasks
@@ -3222,7 +3222,7 @@ _080CF9AC:
ldr r1, _080CF9C8 @ =gUnknown_841E325
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r0, _080CF9CC @ =gTasks
adds r1, r7, r6
lsls r1, 3
@@ -3341,7 +3341,7 @@ _080CFAA8:
movs r0, 0
adds r1, r4, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r1, _080CFAD4 @ =gTasks
adds r0, r7, r6
lsls r0, 3
@@ -3376,7 +3376,7 @@ _080CFAF2:
ldr r1, _080CFB2C @ =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r0, _080CFB30 @ =gTasks
adds r1, r7, r6
lsls r1, 3
@@ -3477,7 +3477,7 @@ _080CFBDA:
ldr r1, _080CFC04 @ =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r0, _080CFC08 @ =gTasks
adds r1, r7, r6
lsls r1, 3
@@ -3509,7 +3509,7 @@ _080CFC26:
ldr r1, _080CFC4C @ =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r0, _080CFC50 @ =gTasks
adds r1, r7, r6
lsls r1, 3
@@ -3537,7 +3537,7 @@ _080CFC54:
ldr r1, _080CFCEC @ =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r0, _080CFCF0 @ =gTasks
adds r1, r7, r6
lsls r1, 3
@@ -3625,7 +3625,7 @@ _080CFD1C:
ldr r1, _080CFD68 @ =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r1, _080CFD6C @ =gTasks
adds r0, r7, r6
lsls r0, 3
@@ -3665,7 +3665,7 @@ _080CFD70:
ldr r1, _080CFDA4 @ =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r1, _080CFDA8 @ =gTasks
adds r0, r7, r6
lsls r0, 3
@@ -3782,7 +3782,7 @@ _080CFE74:
ldr r1, _080CFEB8 @ =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r1, _080CFEBC @ =gTasks
adds r0, r7, r6
lsls r0, 3
@@ -3825,7 +3825,7 @@ _080CFEC0:
ldr r1, _080CFF20 @ =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r0, _080CFF24 @ =gTasks
adds r1, r7, r6
lsls r1, 3
@@ -3859,7 +3859,7 @@ _080CFF42:
ldr r1, _080CFF68 @ =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r0, _080CFF6C @ =gTasks
adds r1, r7, r6
lsls r1, 3
@@ -3890,7 +3890,7 @@ _080CFF70:
ldr r1, _080CFFB0 @ =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r1, _080CFFB4 @ =gTasks
adds r0, r7, r6
lsls r0, 3
@@ -3909,7 +3909,7 @@ _080CFFB8:
ldr r1, _080CFFE4 @ =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r1, _080CFFE8 @ =gTasks
adds r0, r7, r6
lsls r0, 3
@@ -3932,7 +3932,7 @@ _080CFFEC:
ldr r1, _080D0010 @ =gDisplayedStringBattle
movs r0, 0
movs r2, 0x1
- bl sub_8054508
+ bl DrawTextOnTradeWindow
ldr r1, _080D0014 @ =gTasks
adds r0, r7, r6
lsls r0, 3
diff --git a/asm/link_rfu_3.s b/asm/link_rfu_3.s
index 9fc1f72cc..63a894247 100644
--- a/asm/link_rfu_3.s
+++ b/asm/link_rfu_3.s
@@ -2939,7 +2939,7 @@ sub_8117100: @ 8117100
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
- bl sub_804C718
+ bl CB2_ReturnFromLinkTrade
adds r0, r4, 0
bl DestroyTask
pop {r4}
@@ -3070,7 +3070,7 @@ _08117210:
lsrs r0, 24
cmp r0, 0x3
bne _0811725C
- ldr r4, _08117268 @ =gUnknown_2031CCC
+ ldr r4, _08117268 @ =gLinkPartnerMail
bl GetMultiplayerId
adds r1, r0, 0
movs r0, 0x1
@@ -3083,14 +3083,14 @@ _08117210:
movs r2, 0xD8
bl memcpy
bl ResetBlockReceivedFlags
- ldr r1, _08117270 @ =gUnknown_2031DA4
+ 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 @ =sub_8050138
+ ldr r0, _0811727C @ =CB2_InitTradeAnim_LinkTrade
bl SetMainCallback2
mov r0, r8
bl sub_811B148
@@ -3103,12 +3103,12 @@ _0811725C:
pop {r0}
bx r0
.align 2, 0
-_08117268: .4byte gUnknown_2031CCC
+_08117268: .4byte gLinkPartnerMail
_0811726C: .4byte gBlockRecvBuffer
-_08117270: .4byte gUnknown_2031DA4
+_08117270: .4byte gSelectedTradeMonPositions
_08117274: .4byte gMain
_08117278: .4byte CB2_ReturnToField
-_0811727C: .4byte sub_8050138
+_0811727C: .4byte CB2_InitTradeAnim_LinkTrade
thumb_func_end sub_8117130
thumb_func_start sub_8117280
diff --git a/asm/party_menu.s b/asm/party_menu.s
index 25befd61d..43a7a6e31 100644
--- a/asm/party_menu.s
+++ b/asm/party_menu.s
@@ -364,7 +364,7 @@ _0811ED14:
_0811ED30: .4byte gUnknown_203B0A0
_0811ED34: .4byte gUnknown_203B09C
_0811ED38:
- bl sub_8122550
+ bl LoadHeldItemIcons
b _0811EDFC
_0811ED3E:
bl sub_8122860
@@ -3033,7 +3033,7 @@ _081201C0:
lsrs r6, r0, 29
cmp r6, 0x3
bne _081201F0
- ldr r0, _081201EC @ =gUnknown_20243B0
+ ldr r0, _081201EC @ =gPlayerParty + 300 @ &gPlayerParty[3]
movs r1, 0xB
bl GetMonData
cmp r0, 0
@@ -3042,12 +3042,12 @@ _081201C0:
b _08120290
.align 2, 0
_081201E8: .4byte gUnknown_203B09C
-_081201EC: .4byte gUnknown_20243B0
+_081201EC: .4byte gPlayerParty + 300 @ &gPlayerParty[3]
_081201F0:
- ldr r0, _081201F4 @ =gUnknown_202434C
+ ldr r0, _081201F4 @ =gPlayerParty + 200 @ &gPlayerParty[2]
b _0812020C
.align 2, 0
-_081201F4: .4byte gUnknown_202434C
+_081201F4: .4byte gPlayerParty + 200 @ &gPlayerParty[2]
_081201F8:
cmp r0, 0x1
bne _08120290
@@ -3058,7 +3058,7 @@ _081201F8:
lsrs r5, r0, 29
cmp r5, 0x5
bne _08120224
- ldr r0, _08120220 @ =gUnknown_2024478
+ ldr r0, _08120220 @ =gPlayerParty + 500 @ &gPlayerParty[5]
_0812020C:
movs r1, 0xB
bl GetMonData
@@ -3068,9 +3068,9 @@ _0812020C:
b _08120290
.align 2, 0
_0812021C: .4byte gUnknown_203B09C
-_08120220: .4byte gUnknown_2024478
+_08120220: .4byte gPlayerParty + 500 @ &gPlayerParty[5]
_08120224:
- ldr r0, _08120234 @ =gUnknown_2024414
+ ldr r0, _08120234 @ =gPlayerParty + 400 @ &gPlayerParty[4]
movs r1, 0xB
bl GetMonData
cmp r0, 0
@@ -3078,7 +3078,7 @@ _08120224:
movs r0, 0x4
b _0812028E
.align 2, 0
-_08120234: .4byte gUnknown_2024414
+_08120234: .4byte gPlayerParty + 400 @ &gPlayerParty[4]
_08120238:
ldrb r1, [r4]
subs r0, r1, 0x2
@@ -7598,8 +7598,8 @@ _08122544:
_0812254C: .4byte gSprites
thumb_func_end sub_81224D0
- thumb_func_start sub_8122550
-sub_8122550: @ 8122550
+ thumb_func_start LoadHeldItemIcons
+LoadHeldItemIcons: @ 8122550
push {lr}
ldr r0, _08122564 @ =gUnknown_845A42C
bl LoadSpriteSheet
@@ -7610,7 +7610,7 @@ sub_8122550: @ 8122550
.align 2, 0
_08122564: .4byte gUnknown_845A42C
_08122568: .4byte gUnknown_845A434
- thumb_func_end sub_8122550
+ thumb_func_end LoadHeldItemIcons
thumb_func_start sub_812256C
sub_812256C: @ 812256C
@@ -8681,7 +8681,7 @@ _08122D8C:
ldr r3, _08122DB8 @ =sub_8122DBC
movs r4, 0
str r4, [sp]
- bl sub_81344F8
+ bl ShowPokemonSummaryScreen
add sp, 0x4
pop {r4}
pop {r0}
@@ -11407,7 +11407,7 @@ sub_8124384: @ 8124384
adds r1, r6, 0
adds r2, r5, 0
adds r3, r4, 0
- bl sub_804FCE0
+ bl Trade_CanTradeSelectedMon
cmp r0, 0x1
beq _08124418
cmp r0, 0x2
@@ -18129,7 +18129,7 @@ _08127A80: .4byte sub_811FB28
sub_8127A84: @ 8127A84
push {r4,lr}
adds r4, r0, 0
- ldr r0, _08127AA4 @ =gUnknown_20242E8
+ ldr r0, _08127AA4 @ =gPlayerParty + 100 @ &gPlayerParty[1]
movs r1, 0xB
bl GetMonData
cmp r0, 0
@@ -18143,7 +18143,7 @@ _08127AA0:
movs r0, 0x7
b _08127ABA
.align 2, 0
-_08127AA4: .4byte gUnknown_20242E8
+_08127AA4: .4byte gPlayerParty + 100 @ &gPlayerParty[1]
_08127AA8:
ldr r0, _08127AB4 @ =gUnknown_203B0A0
ldrb r0, [r0, 0xB]
diff --git a/asm/pokeball.s b/asm/pokeball.s
index fa1f4eee0..ed9eea832 100644
--- a/asm/pokeball.s
+++ b/asm/pokeball.s
@@ -2327,8 +2327,8 @@ _0804BB90:
bx r0
thumb_func_end sub_804BAA4
- thumb_func_start sub_804BB98
-sub_804BB98: @ 804BB98
+ thumb_func_start CreateTradePokeballSprite
+CreateTradePokeballSprite: @ 804BB98
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -2414,7 +2414,7 @@ _0804BC40: .4byte gUnknown_82605CC
_0804BC44: .4byte gUnknown_82606F4
_0804BC48: .4byte gSprites
_0804BC4C: .4byte sub_804BC50
- thumb_func_end sub_804BB98
+ thumb_func_end CreateTradePokeballSprite
thumb_func_start sub_804BC50
sub_804BC50: @ 804BC50
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index ec0e9e53c..df7c4fbce 100644
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -719,8 +719,8 @@ _0808BEA8:
bx r1
thumb_func_end sub_808BDE8
- thumb_func_start sub_808BEB4
-sub_808BEB4: @ 808BEB4
+ thumb_func_start PSS_RenderTextToVramViaBuffer
+PSS_RenderTextToVramViaBuffer: @ 808BEB4
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -868,7 +868,7 @@ _0808BFC4:
bx r0
.align 2, 0
_0808BFDC: .4byte 0x001fffff
- thumb_func_end sub_808BEB4
+ thumb_func_end PSS_RenderTextToVramViaBuffer
thumb_func_start sub_808BFE0
sub_808BFE0: @ 808BFE0
@@ -6561,7 +6561,7 @@ _0808EE78:
mov r0, r8
adds r1, r6, 0
adds r2, r5, 0
- bl sub_81344F8
+ bl ShowPokemonSummaryScreen
b _0808EEF6
.align 2, 0
_0808EEAC: .4byte gUnknown_20397B0
@@ -12353,7 +12353,7 @@ sub_8091A94: @ 8091A94
adds r0, r5, 0
movs r2, 0
movs r3, 0
- bl sub_808BEB4
+ bl PSS_RenderTextToVramViaBuffer
ldr r0, [sp, 0x30]
bl LoadSpriteSheet
mov r0, r8
@@ -12539,7 +12539,7 @@ _08091CFC:
adds r0, r5, 0
movs r2, 0
movs r3, 0
- bl sub_808BEB4
+ bl PSS_RenderTextToVramViaBuffer
adds r0, r6, 0
bl LoadSpriteSheet
ldr r0, [sp, 0x2C]
diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s
index 4c090a2d9..ceca3ed12 100644
--- a/asm/pokemon_summary_screen.s
+++ b/asm/pokemon_summary_screen.s
@@ -5,8 +5,8 @@
.text
- thumb_func_start sub_81344F8
-sub_81344F8: @ 81344F8
+ thumb_func_start ShowPokemonSummaryScreen
+ShowPokemonSummaryScreen: @ 81344F8
push {r4-r7,lr}
mov r7, r10
mov r6, r9
@@ -268,7 +268,7 @@ _08134728: .4byte 0x0000322c
_0813472C: .4byte 0x00003290
_08134730: .4byte 0x00003204
_08134734: .4byte sub_8135C34
- thumb_func_end sub_81344F8
+ thumb_func_end ShowPokemonSummaryScreen
thumb_func_start ShowSelectMovePokemonSummaryScreen
ShowSelectMovePokemonSummaryScreen: @ 8134738
@@ -283,7 +283,7 @@ ShowSelectMovePokemonSummaryScreen: @ 8134738
lsrs r5, 16
movs r4, 0x2
str r4, [sp]
- bl sub_81344F8
+ bl ShowPokemonSummaryScreen
ldr r0, _08134764 @ =gUnknown_203B140
ldr r0, [r0]
ldr r1, _08134768 @ =0x00003260
@@ -14091,7 +14091,7 @@ sub_813B854: @ 813B854
str r0, [sp]
movs r1, 0
movs r2, 0
- bl sub_81344F8
+ bl ShowPokemonSummaryScreen
add sp, 0x4
pop {r0}
bx r0
diff --git a/asm/trade.s b/asm/trade.s
deleted file mode 100644
index 6e5f333ae..000000000
--- a/asm/trade.s
+++ /dev/null
@@ -1,15329 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_804C600
-sub_804C600: @ 804C600
- push {r4,r5,lr}
- sub sp, 0xC
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- bl ResetTasks
- bl ResetPaletteFade
- ldr r2, _0804C6F8 @ =gPaletteFade
- ldrb r0, [r2, 0x8]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0x8]
- ldr r0, _0804C6FC @ =sub_804D4F8
- bl SetVBlankCallback
- ldr r4, _0804C700 @ =gTMCaseMainWindowPalette
- adds r0, r4, 0
- movs r1, 0xF0
- movs r2, 0x14
- bl LoadPalette
- adds r0, r4, 0
- movs r1, 0xD0
- movs r2, 0x14
- bl LoadPalette
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, _0804C704 @ =gUnknown_8261F1C
- movs r0, 0
- movs r2, 0x4
- bl InitBgsFromTemplates
- ldr r0, _0804C708 @ =gUnknown_2031DA8
- ldr r1, [r0]
- movs r0, 0x8F
- lsls r0, 4
- adds r1, r0
- movs r0, 0x1
- bl SetBgTilemapBuffer
- ldr r0, _0804C70C @ =gUnknown_8261F2C
- bl InitWindows
- lsls r0, 16
- cmp r0, 0
- beq _0804C6F0
- bl DeactivateAllTextPrinters
- ldr r1, _0804C710 @ =gUnknown_3000E78
- ldr r2, _0804C714 @ =0x0000024e
- adds r0, r2, 0
- strh r0, [r1]
- movs r5, 0
-_0804C674:
- lsls r4, r5, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl ClearWindowTilemap
- adds r0, r4, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- adds r5, 0x1
- cmp r5, 0x11
- bls _0804C674
- 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, 0x14
- movs r2, 0xC0
- bl TextWindow_SetStdFrame0_WithPal
- movs r0, 0x2
- movs r1, 0x1
- movs r2, 0xE0
- bl TextWindow_SetUserSelectedFrame
- bl LoadMonIconPalettes
- ldr r2, _0804C708 @ =gUnknown_2031DA8
- ldr r0, [r2]
- adds r0, 0x69
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0x6F
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0x70
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0x74
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0x75
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0x7A
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0x7B
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0xA8
- strb r1, [r0]
-_0804C6F0:
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0804C6F8: .4byte gPaletteFade
-_0804C6FC: .4byte sub_804D4F8
-_0804C700: .4byte gTMCaseMainWindowPalette
-_0804C704: .4byte gUnknown_8261F1C
-_0804C708: .4byte gUnknown_2031DA8
-_0804C70C: .4byte gUnknown_8261F2C
-_0804C710: .4byte gUnknown_3000E78
-_0804C714: .4byte 0x0000024e
- thumb_func_end sub_804C600
-
- thumb_func_start sub_804C718
-sub_804C718: @ 804C718
- push {lr}
- ldr r0, _0804C724 @ =sub_804C728
- bl SetMainCallback2
- pop {r0}
- bx r0
- .align 2, 0
-_0804C724: .4byte sub_804C728
- thumb_func_end sub_804C718
-
- thumb_func_start sub_804C728
-sub_804C728: @ 804C728
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x28
- ldr r1, _0804C74C @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r3, r1, 0
- cmp r0, 0x16
- bls _0804C742
- b _0804CEE6
-_0804C742:
- lsls r0, 2
- ldr r1, _0804C750 @ =_0804C754
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0804C74C: .4byte gMain
-_0804C750: .4byte _0804C754
- .align 2, 0
-_0804C754:
- .4byte _0804C7B0
- .4byte _0804C7FC
- .4byte _0804C8C8
- .4byte _0804C8F4
- .4byte _0804C950
- .4byte _0804C9B0
- .4byte _0804C9F0
- .4byte _0804CA10
- .4byte _0804CB50
- .4byte _0804CB78
- .4byte _0804CB9C
- .4byte _0804CC30
- .4byte _0804CC3E
- .4byte _0804CD10
- .4byte _0804CDE0
- .4byte _0804CE20
- .4byte _0804CE3A
- .4byte _0804CE48
- .4byte _0804CE5C
- .4byte _0804CE7C
- .4byte _0804CE9C
- .4byte _0804CEB0
- .4byte _0804CED0
-_0804C7B0:
- ldr r4, _0804C7E8 @ =gUnknown_2031DA8
- ldr r0, _0804C7EC @ =0x000010f0
- bl AllocZeroed
- str r0, [r4]
- bl sub_804C600
- ldr r4, _0804C7F0 @ =gUnknown_2031C90
- movs r0, 0xE0
- lsls r0, 4
- bl AllocZeroed
- str r0, [r4]
- movs r6, 0
- ldr r2, _0804C7F4 @ =gUnknown_2031C94
-_0804C7CE:
- lsls r1, r6, 8
- ldr r0, [r4]
- adds r0, r1
- stm r2!, {r0}
- adds r6, 0x1
- cmp r6, 0xD
- ble _0804C7CE
- ldr r1, _0804C7F8 @ =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _0804CEC2
- .align 2, 0
-_0804C7E8: .4byte gUnknown_2031DA8
-_0804C7EC: .4byte 0x000010f0
-_0804C7F0: .4byte gUnknown_2031C90
-_0804C7F4: .4byte gUnknown_2031C94
-_0804C7F8: .4byte gMain
-_0804C7FC:
- ldr r2, _0804C864 @ =gPaletteFade
- ldrb r1, [r2, 0x8]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x8]
- movs r6, 0
- movs r4, 0
-_0804C80A:
- movs r0, 0x64
- muls r0, r6
- ldr r1, _0804C868 @ =gEnemyParty
- adds r0, r1
- str r4, [sp]
- str r4, [sp, 0x4]
- str r4, [sp, 0x8]
- str r4, [sp, 0xC]
- movs r1, 0
- movs r2, 0
- movs r3, 0x20
- bl CreateMon
- adds r6, 0x1
- cmp r6, 0x5
- ble _0804C80A
- movs r0, 0
- bl sub_804F5BC
- movs r0, 0
- bl ShowBg
- ldr r0, _0804C86C @ =gReceivedRemoteLinkPlayers
- ldrb r2, [r0]
- cmp r2, 0
- bne _0804C8B4
- ldr r1, _0804C870 @ =gLinkType
- ldr r5, _0804C874 @ =0x00001122
- adds r0, r5, 0
- strh r0, [r1]
- ldr r0, _0804C878 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0xA8
- strb r2, [r0]
- ldr r0, _0804C87C @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804C880
- bl sub_800B1F4
- bl OpenLink
- bl sub_80FBB20
- b _0804C892
- .align 2, 0
-_0804C864: .4byte gPaletteFade
-_0804C868: .4byte gEnemyParty
-_0804C86C: .4byte gReceivedRemoteLinkPlayers
-_0804C870: .4byte gLinkType
-_0804C874: .4byte 0x00001122
-_0804C878: .4byte gUnknown_2031DA8
-_0804C87C: .4byte gWirelessCommType
-_0804C880:
- bl OpenLink
- ldr r1, _0804C8A8 @ =gMain
- movs r7, 0x87
- lsls r7, 3
- adds r1, r7
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_0804C892:
- ldr r0, _0804C8AC @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804C89C
- b _0804CEE6
-_0804C89C:
- ldr r0, _0804C8B0 @ =sub_8081A90
- movs r1, 0x1
- bl CreateTask
- b _0804CEE6
- .align 2, 0
-_0804C8A8: .4byte gMain
-_0804C8AC: .4byte gWirelessCommType
-_0804C8B0: .4byte sub_8081A90
-_0804C8B4:
- ldr r0, _0804C8C4 @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- movs r1, 0x4
- strb r1, [r0]
- b _0804CEE6
- .align 2, 0
-_0804C8C4: .4byte gMain
-_0804C8C8:
- ldr r2, _0804C8F0 @ =gUnknown_2031DA8
- ldr r1, [r2]
- adds r1, 0xA8
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r0, [r2]
- adds r1, r0, 0
- adds r1, 0xA8
- ldrb r0, [r1]
- cmp r0, 0xB
- bhi _0804C8E2
- b _0804CEE6
-_0804C8E2:
- movs r0, 0
- strb r0, [r1]
- movs r2, 0x87
- lsls r2, 3
- adds r1, r3, r2
- b _0804CEC2
- .align 2, 0
-_0804C8F0: .4byte gUnknown_2031DA8
-_0804C8F4:
- bl GetLinkPlayerCount_2
- adds r4, r0, 0
- bl GetSavedPlayerCount
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bcs _0804C908
- b _0804CEE6
-_0804C908:
- bl IsLinkMaster
- lsls r0, 24
- cmp r0, 0
- beq _0804C940
- ldr r0, _0804C938 @ =gUnknown_2031DA8
- ldr r1, [r0]
- adds r1, 0xA8
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1E
- bhi _0804C928
- b _0804CEE6
-_0804C928:
- bl CheckShouldAdvanceLinkState
- ldr r1, _0804C93C @ =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _0804CEC2
- .align 2, 0
-_0804C938: .4byte gUnknown_2031DA8
-_0804C93C: .4byte gMain
-_0804C940:
- ldr r1, _0804C94C @ =gMain
- movs r5, 0x87
- lsls r5, 3
- adds r1, r5
- b _0804CEC2
- .align 2, 0
-_0804C94C: .4byte gMain
-_0804C950:
- ldr r0, _0804C9A0 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _0804C95A
- b _0804CEE6
-_0804C95A:
- bl IsLinkPlayerDataExchangeComplete
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0804C968
- b _0804CEE6
-_0804C968:
- bl sub_80FBB4C
- bl CalculatePlayerPartyCount
- ldr r1, _0804C9A4 @ =gMain
- movs r7, 0x87
- lsls r7, 3
- adds r1, r7
- ldrb r0, [r1]
- adds r0, 0x1
- movs r2, 0
- strb r0, [r1]
- ldr r0, _0804C9A8 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0xA8
- strb r2, [r0]
- ldr r0, _0804C9AC @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- bne _0804C992
- b _0804CEE6
-_0804C992:
- movs r0, 0x1
- bl sub_80FA484
- bl sub_800AB9C
- b _0804CEE6
- .align 2, 0
-_0804C9A0: .4byte gReceivedRemoteLinkPlayers
-_0804C9A4: .4byte gMain
-_0804C9A8: .4byte gUnknown_2031DA8
-_0804C9AC: .4byte gWirelessCommType
-_0804C9B0:
- ldr r0, _0804C9E0 @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804C9E8
- bl IsLinkRfuTaskFinished
- lsls r0, 24
- cmp r0, 0
- bne _0804C9C4
- b _0804CEE6
-_0804C9C4:
- ldr r1, _0804C9E4 @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- bl LoadWirelessStatusIndicatorSpriteGfx
- movs r0, 0
- movs r1, 0
- bl CreateWirelessStatusIndicatorSprite
- b _0804CEE6
- .align 2, 0
-_0804C9E0: .4byte gWirelessCommType
-_0804C9E4: .4byte gMain
-_0804C9E8:
- movs r2, 0x87
- lsls r2, 3
- adds r1, r3, r2
- b _0804CEC2
-_0804C9F0:
- bl shedinja_maker_maybe
- lsls r0, 24
- cmp r0, 0
- bne _0804C9FC
- b _0804CEE6
-_0804C9FC:
- bl sub_804F9D8
- ldr r1, _0804CA0C @ =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _0804CEC2
- .align 2, 0
-_0804CA0C: .4byte gMain
-_0804CA10:
- bl CalculateEnemyPartyCount
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- ldr r2, _0804CB2C @ =gUnknown_2031DA8
- ldr r0, [r2]
- ldr r1, _0804CB30 @ =gPlayerPartyCount
- ldrb r1, [r1]
- adds r0, 0x36
- strb r1, [r0]
- ldr r0, [r2]
- ldr r1, _0804CB34 @ =gEnemyPartyCount
- ldrb r1, [r1]
- adds r0, 0x37
- strb r1, [r0]
- movs r6, 0
- ldr r0, [r2]
- adds r0, 0x36
- ldrb r0, [r0]
- cmp r6, r0
- bge _0804CAA8
- mov r8, r2
- ldr r7, _0804CB38 @ =gTradeMonSpriteCoords
-_0804CA4A:
- movs r0, 0x64
- adds r4, r6, 0
- muls r4, r0
- ldr r0, _0804CB3C @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- ldrb r2, [r7]
- lsls r2, 19
- movs r1, 0xE0
- lsls r1, 12
- adds r2, r1
- asrs r2, 16
- ldrb r3, [r7, 0x1]
- lsls r3, 19
- ldr r1, _0804CB40 @ =0xfff40000
- adds r3, r1
- asrs r3, 16
- movs r1, 0x1
- str r1, [sp]
- str r0, [sp, 0x4]
- str r1, [sp, 0x8]
- adds r0, r5, 0
- ldr r1, _0804CB44 @ =SpriteCB_MonIcon
- bl CreateMonIcon
- mov r2, r8
- ldr r1, [r2]
- adds r1, 0x28
- adds r1, r6
- strb r0, [r1]
- adds r7, 0x2
- adds r6, 0x1
- ldr r0, [r2]
- adds r0, 0x36
- ldrb r0, [r0]
- cmp r6, r0
- blt _0804CA4A
-_0804CAA8:
- movs r6, 0
- ldr r1, _0804CB2C @ =gUnknown_2031DA8
- ldr r0, [r1]
- adds r0, 0x37
- ldrb r0, [r0]
- cmp r6, r0
- bge _0804CB20
- ldr r0, _0804CB38 @ =gTradeMonSpriteCoords
- mov r8, r1
- adds r7, r0, 0
- adds r7, 0xC
-_0804CABE:
- movs r0, 0x64
- adds r4, r6, 0
- muls r4, r0
- ldr r0, _0804CB48 @ =gEnemyParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- ldrb r2, [r7]
- lsls r2, 19
- movs r3, 0xE0
- lsls r3, 12
- adds r2, r3
- asrs r2, 16
- ldrb r3, [r7, 0x1]
- lsls r3, 19
- ldr r1, _0804CB40 @ =0xfff40000
- adds r3, r1
- asrs r3, 16
- movs r1, 0x1
- str r1, [sp]
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- adds r0, r5, 0
- ldr r1, _0804CB44 @ =SpriteCB_MonIcon
- bl CreateMonIcon
- mov r2, r8
- ldr r1, [r2]
- adds r1, 0x2E
- adds r1, r6
- strb r0, [r1]
- adds r7, 0x2
- adds r6, 0x1
- ldr r0, [r2]
- adds r0, 0x37
- ldrb r0, [r0]
- cmp r6, r0
- blt _0804CABE
-_0804CB20:
- ldr r1, _0804CB4C @ =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _0804CEC2
- .align 2, 0
-_0804CB2C: .4byte gUnknown_2031DA8
-_0804CB30: .4byte gPlayerPartyCount
-_0804CB34: .4byte gEnemyPartyCount
-_0804CB38: .4byte gTradeMonSpriteCoords
-_0804CB3C: .4byte gPlayerParty
-_0804CB40: .4byte 0xfff40000
-_0804CB44: .4byte SpriteCB_MonIcon
-_0804CB48: .4byte gEnemyParty
-_0804CB4C: .4byte gMain
-_0804CB50:
- bl sub_8122550
- ldr r0, _0804CB70 @ =gUnknown_2031DA8
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x36
- adds r1, 0x28
- movs r2, 0
- bl sub_812256C
- ldr r1, _0804CB74 @ =gMain
- movs r5, 0x87
- lsls r5, 3
- adds r1, r5
- b _0804CEC2
- .align 2, 0
-_0804CB70: .4byte gUnknown_2031DA8
-_0804CB74: .4byte gMain
-_0804CB78:
- ldr r0, _0804CB94 @ =gUnknown_2031DA8
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x36
- adds r1, 0x28
- movs r2, 0x1
- bl sub_812256C
- ldr r1, _0804CB98 @ =gMain
- movs r7, 0x87
- lsls r7, 3
- adds r1, r7
- b _0804CEC2
- .align 2, 0
-_0804CB94: .4byte gUnknown_2031DA8
-_0804CB98: .4byte gMain
-_0804CB9C:
- ldr r0, _0804CC14 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r6, _0804CC18 @ =gUnknown_2031C94
- ldr r1, [r6]
- ldr r5, _0804CC1C @ =gDecompressionBuffer
- str r5, [sp]
- movs r4, 0x3
- str r4, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_808BEB4
- bl GetMultiplayerId
- lsls r0, 24
- movs r1, 0x80
- lsls r1, 17
- eors r1, r0
- lsrs r1, 24
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- ldr r1, _0804CC20 @ =gLinkPlayers + 8
- adds r0, r1
- ldr r1, [r6, 0xC]
- str r5, [sp]
- str r4, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_808BEB4
- ldr r4, _0804CC24 @ =gUnknown_8261ECC
- ldr r0, [r4]
- ldr r1, [r6, 0x18]
- str r5, [sp]
- movs r2, 0x2
- str r2, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_808BEB4
- ldr r0, [r4, 0x4]
- ldr r1, [r6, 0x20]
- movs r2, 0x18
- bl sub_804F728
- ldr r1, _0804CC28 @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- movs r2, 0
- strb r0, [r1]
- ldr r0, _0804CC2C @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0xA8
- strb r2, [r0]
- b _0804CEE6
- .align 2, 0
-_0804CC14: .4byte gSaveBlock2Ptr
-_0804CC18: .4byte gUnknown_2031C94
-_0804CC1C: .4byte gDecompressionBuffer
-_0804CC20: .4byte gLinkPlayers + 8
-_0804CC24: .4byte gUnknown_8261ECC
-_0804CC28: .4byte gMain
-_0804CC2C: .4byte gUnknown_2031DA8
-_0804CC30:
- bl sub_804F610
- lsls r0, 24
- cmp r0, 0
- bne _0804CC3C
- b _0804CEE6
-_0804CC3C:
- b _0804CEBA
-_0804CC3E:
- ldr r0, _0804CCFC @ =gSaveBlock2Ptr
- ldr r1, [r0]
- movs r0, 0x1
- movs r2, 0
- bl GetStringWidth
- adds r1, r0, 0
- movs r0, 0x38
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- movs r6, 0
- add r5, sp, 0x10
- ldr r3, _0804CD00 @ =gTradeUnknownSpriteCoords
- mov r8, r3
- asrs r0, 1
- ldrb r7, [r3, 0x4]
- adds r4, r0, r7
-_0804CC62:
- add r1, sp, 0x10
- ldr r0, _0804CD04 @ =gUnknown_8261CC8
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldrh r0, [r5]
- adds r0, r6
- strh r0, [r5]
- lsls r1, r4, 16
- asrs r1, 16
- add r0, sp, 0x10
- mov r3, r8
- ldrb r2, [r3, 0x5]
- movs r3, 0x1
- bl CreateSprite
- adds r4, 0x20
- adds r6, 0x1
- cmp r6, 0x2
- ble _0804CC62
- bl GetMultiplayerId
- lsls r0, 24
- movs r1, 0x80
- lsls r1, 17
- eors r1, r0
- lsrs r1, 24
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- ldr r1, _0804CD08 @ =gLinkPlayers + 8
- adds r1, r0, r1
- movs r0, 0x1
- movs r2, 0
- bl GetStringWidth
- adds r1, r0, 0
- movs r0, 0x38
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- movs r6, 0
- add r5, sp, 0x10
- ldr r7, _0804CD00 @ =gTradeUnknownSpriteCoords
- mov r8, r7
- asrs r0, 1
- mov r1, r8
- ldrb r1, [r1, 0x6]
- adds r4, r0, r1
-_0804CCC6:
- add r1, sp, 0x10
- ldr r0, _0804CD04 @ =gUnknown_8261CC8
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- adds r0, r6, 0x3
- ldrh r1, [r5]
- adds r0, r1
- strh r0, [r5]
- lsls r1, r4, 16
- asrs r1, 16
- add r0, sp, 0x10
- mov r3, r8
- ldrb r2, [r3, 0x7]
- movs r3, 0x1
- bl CreateSprite
- adds r4, 0x20
- adds r6, 0x1
- cmp r6, 0x2
- ble _0804CCC6
- ldr r1, _0804CD0C @ =gMain
- movs r5, 0x87
- lsls r5, 3
- adds r1, r5
- b _0804CEC2
- .align 2, 0
-_0804CCFC: .4byte gSaveBlock2Ptr
-_0804CD00: .4byte gTradeUnknownSpriteCoords
-_0804CD04: .4byte gUnknown_8261CC8
-_0804CD08: .4byte gLinkPlayers + 8
-_0804CD0C: .4byte gMain
-_0804CD10:
- ldr r4, _0804CDCC @ =gUnknown_8261CC8
- add r1, sp, 0x10
- adds r0, r4, 0
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r5,r7}
- stm r1!, {r2,r5,r7}
- add r1, sp, 0x10
- adds r0, r1, 0
- ldrh r0, [r0]
- adds r0, 0x6
- strh r0, [r1]
- adds r0, r1, 0
- movs r1, 0xD7
- movs r2, 0x97
- movs r3, 0x1
- bl CreateSprite
- add r0, sp, 0x10
- ldm r4!, {r3,r5,r7}
- stm r0!, {r3,r5,r7}
- ldm r4!, {r1-r3}
- stm r0!, {r1-r3}
- add r1, sp, 0x10
- adds r0, r1, 0
- ldrh r0, [r0]
- adds r0, 0x7
- strh r0, [r1]
- adds r0, r1, 0
- movs r1, 0xF7
- movs r2, 0x97
- movs r3, 0x1
- bl CreateSprite
- movs r6, 0
- add r4, sp, 0x10
- movs r5, 0xC0
- lsls r5, 13
-_0804CD5C:
- add r1, sp, 0x10
- ldr r0, _0804CDCC @ =gUnknown_8261CC8
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- adds r0, r6, 0
- adds r0, 0x8
- ldrh r7, [r4]
- adds r0, r7
- strh r0, [r4]
- asrs r1, r5, 16
- add r0, sp, 0x10
- movs r2, 0x96
- movs r3, 0x1
- bl CreateSprite
- movs r0, 0x80
- lsls r0, 14
- adds r5, r0
- adds r6, 0x1
- cmp r6, 0x5
- ble _0804CD5C
- ldr r0, _0804CDD0 @ =gUnknown_8261CB0
- ldr r2, _0804CDD4 @ =gTradeMonSpriteCoords
- ldrb r1, [r2]
- lsls r1, 19
- movs r3, 0x80
- lsls r3, 14
- adds r1, r3
- asrs r1, 16
- ldrb r2, [r2, 0x1]
- lsls r2, 3
- movs r3, 0x2
- bl CreateSprite
- ldr r2, _0804CDD8 @ =gUnknown_2031DA8
- ldr r1, [r2]
- adds r1, 0x34
- movs r3, 0
- strb r0, [r1]
- ldr r0, [r2]
- adds r0, 0x35
- strb r3, [r0]
- ldr r1, _0804CDDC @ =gMain
- movs r5, 0x87
- lsls r5, 3
- adds r1, r5
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- movs r0, 0
- bl rbox_fill_rectangle
- b _0804CEE6
- .align 2, 0
-_0804CDCC: .4byte gUnknown_8261CC8
-_0804CDD0: .4byte gUnknown_8261CB0
-_0804CDD4: .4byte gTradeMonSpriteCoords
-_0804CDD8: .4byte gUnknown_2031DA8
-_0804CDDC: .4byte gMain
-_0804CDE0:
- movs r0, 0
- bl sub_804F748
- movs r0, 0
- bl sub_804F020
- ldr r2, _0804CE14 @ =gUnknown_2031DA8
- ldr r0, [r2]
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r2]
- strb r1, [r0, 0x1]
- bl sub_804D764
- ldr r1, _0804CE18 @ =gMain
- movs r7, 0x87
- lsls r7, 3
- adds r1, r7
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r0, _0804CE1C @ =0x00000111
- bl PlayBGM
- b _0804CEE6
- .align 2, 0
-_0804CE14: .4byte gUnknown_2031DA8
-_0804CE18: .4byte gMain
-_0804CE1C: .4byte 0x00000111
-_0804CE20:
- movs r0, 0x1
- bl sub_804F748
- movs r0, 0x1
- bl sub_804F020
- ldr r1, _0804CE44 @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_0804CE3A:
- movs r0, 0
- bl sub_804D694
- b _0804CEBA
- .align 2, 0
-_0804CE44: .4byte gMain
-_0804CE48:
- movs r0, 0x1
- bl sub_804D694
- ldr r1, _0804CE58 @ =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _0804CEC2
- .align 2, 0
-_0804CE58: .4byte gMain
-_0804CE5C:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r1, _0804CE78 @ =gMain
- movs r5, 0x87
- lsls r5, 3
- adds r1, r5
- b _0804CEC2
- .align 2, 0
-_0804CE78: .4byte gMain
-_0804CE7C:
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0x2
- bl sub_804D694
- ldr r1, _0804CE98 @ =gMain
- movs r7, 0x87
- lsls r7, 3
- adds r1, r7
- b _0804CEC2
- .align 2, 0
-_0804CE98: .4byte gMain
-_0804CE9C:
- movs r0, 0
- bl sub_804F890
- ldr r1, _0804CEAC @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _0804CEC2
- .align 2, 0
-_0804CEAC: .4byte gMain
-_0804CEB0:
- movs r0, 0x1
- bl sub_804F890
- bl sub_804F964
-_0804CEBA:
- ldr r1, _0804CECC @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
-_0804CEC2:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _0804CEE6
- .align 2, 0
-_0804CECC: .4byte gMain
-_0804CED0:
- ldr r0, _0804CF08 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0804CEE6
- ldr r0, _0804CF0C @ =sub_804DFF0
- str r0, [r3]
- ldr r0, _0804CF10 @ =sub_804D638
- bl SetMainCallback2
-_0804CEE6:
- bl RunTextPrinters
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- add sp, 0x28
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0804CF08: .4byte gPaletteFade
-_0804CF0C: .4byte sub_804DFF0
-_0804CF10: .4byte sub_804D638
- thumb_func_end sub_804C728
-
- thumb_func_start sub_804CF14
-sub_804CF14: @ 804CF14
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x24
- ldr r1, _0804CF38 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x16
- bls _0804CF2E
- b _0804D4D2
-_0804CF2E:
- lsls r0, 2
- ldr r1, _0804CF3C @ =_0804CF40
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0804CF38: .4byte gMain
-_0804CF3C: .4byte _0804CF40
- .align 2, 0
-_0804CF40:
- .4byte _0804CF9C
- .4byte _0804CFB0
- .4byte _0804CFB8
- .4byte _0804CFC0
- .4byte _0804CFC8
- .4byte _0804CFDC
- .4byte _0804D004
- .4byte _0804D00C
- .4byte _0804D150
- .4byte _0804D178
- .4byte _0804D19C
- .4byte _0804D230
- .4byte _0804D24C
- .4byte _0804D320
- .4byte _0804D4D2
- .4byte _0804D4D2
- .4byte _0804D414
- .4byte _0804D41C
- .4byte _0804D444
- .4byte _0804D480
- .4byte _0804D4A0
- .4byte _0804D4A8
- .4byte _0804D4C0
-_0804CF9C:
- bl sub_804C600
- ldr r1, _0804CFAC @ =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _0804D4B4
- .align 2, 0
-_0804CFAC: .4byte gMain
-_0804CFB0:
- movs r5, 0x87
- lsls r5, 3
- adds r1, r2, r5
- b _0804D200
-_0804CFB8:
- movs r7, 0x87
- lsls r7, 3
- adds r1, r2, r7
- b _0804D4B4
-_0804CFC0:
- movs r0, 0x87
- lsls r0, 3
- adds r1, r2, r0
- b _0804D4B4
-_0804CFC8:
- bl CalculatePlayerPartyCount
- ldr r1, _0804CFD8 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _0804D4B4
- .align 2, 0
-_0804CFD8: .4byte gMain
-_0804CFDC:
- ldr r0, _0804CFFC @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804CFF0
- bl LoadWirelessStatusIndicatorSpriteGfx
- movs r0, 0
- movs r1, 0
- bl CreateWirelessStatusIndicatorSprite
-_0804CFF0:
- ldr r1, _0804D000 @ =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _0804D4B4
- .align 2, 0
-_0804CFFC: .4byte gWirelessCommType
-_0804D000: .4byte gMain
-_0804D004:
- movs r5, 0x87
- lsls r5, 3
- adds r1, r2, r5
- b _0804D4B4
-_0804D00C:
- bl CalculateEnemyPartyCount
- ldr r4, _0804D12C @ =gUnknown_2031DA8
- ldr r0, [r4]
- ldr r1, _0804D130 @ =gPlayerPartyCount
- ldrb r1, [r1]
- adds r0, 0x36
- strb r1, [r0]
- ldr r0, [r4]
- ldr r1, _0804D134 @ =gEnemyPartyCount
- ldrb r1, [r1]
- adds r0, 0x37
- strb r1, [r0]
- movs r0, 0
- bl ClearWindowTilemap
- movs r0, 0
- bl sub_804F020
- movs r0, 0x1
- bl sub_804F020
- movs r6, 0
- ldr r0, [r4]
- adds r0, 0x36
- ldrb r0, [r0]
- cmp r6, r0
- bge _0804D0A8
- mov r8, r4
- ldr r7, _0804D138 @ =gTradeMonSpriteCoords
-_0804D048:
- movs r0, 0x64
- adds r4, r6, 0
- muls r4, r0
- ldr r0, _0804D13C @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- ldrb r2, [r7]
- lsls r2, 19
- movs r1, 0xE0
- lsls r1, 12
- adds r2, r1
- asrs r2, 16
- ldrb r3, [r7, 0x1]
- lsls r3, 19
- ldr r1, _0804D140 @ =0xfff40000
- adds r3, r1
- asrs r3, 16
- movs r1, 0x1
- str r1, [sp]
- str r0, [sp, 0x4]
- str r1, [sp, 0x8]
- adds r0, r5, 0
- ldr r1, _0804D144 @ =SpriteCB_MonIcon
- bl CreateMonIcon
- mov r2, r8
- ldr r1, [r2]
- adds r1, 0x28
- adds r1, r6
- strb r0, [r1]
- adds r7, 0x2
- adds r6, 0x1
- ldr r0, [r2]
- adds r0, 0x36
- ldrb r0, [r0]
- cmp r6, r0
- blt _0804D048
-_0804D0A8:
- movs r6, 0
- ldr r1, _0804D12C @ =gUnknown_2031DA8
- ldr r0, [r1]
- adds r0, 0x37
- ldrb r0, [r0]
- cmp r6, r0
- bge _0804D120
- ldr r0, _0804D138 @ =gTradeMonSpriteCoords
- mov r8, r1
- adds r7, r0, 0
- adds r7, 0xC
-_0804D0BE:
- movs r0, 0x64
- adds r4, r6, 0
- muls r4, r0
- ldr r0, _0804D148 @ =gEnemyParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x41
- movs r2, 0
- bl GetMonData
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- adds r0, r4, 0
- movs r1, 0
- bl GetMonData
- ldrb r2, [r7]
- lsls r2, 19
- movs r3, 0xE0
- lsls r3, 12
- adds r2, r3
- asrs r2, 16
- ldrb r3, [r7, 0x1]
- lsls r3, 19
- ldr r1, _0804D140 @ =0xfff40000
- adds r3, r1
- asrs r3, 16
- movs r1, 0x1
- str r1, [sp]
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- adds r0, r5, 0
- ldr r1, _0804D144 @ =SpriteCB_MonIcon
- bl CreateMonIcon
- mov r2, r8
- ldr r1, [r2]
- adds r1, 0x2E
- adds r1, r6
- strb r0, [r1]
- adds r7, 0x2
- adds r6, 0x1
- ldr r0, [r2]
- adds r0, 0x37
- ldrb r0, [r0]
- cmp r6, r0
- blt _0804D0BE
-_0804D120:
- ldr r1, _0804D14C @ =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _0804D4B4
- .align 2, 0
-_0804D12C: .4byte gUnknown_2031DA8
-_0804D130: .4byte gPlayerPartyCount
-_0804D134: .4byte gEnemyPartyCount
-_0804D138: .4byte gTradeMonSpriteCoords
-_0804D13C: .4byte gPlayerParty
-_0804D140: .4byte 0xfff40000
-_0804D144: .4byte SpriteCB_MonIcon
-_0804D148: .4byte gEnemyParty
-_0804D14C: .4byte gMain
-_0804D150:
- bl sub_8122550
- ldr r0, _0804D170 @ =gUnknown_2031DA8
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x36
- adds r1, 0x28
- movs r2, 0
- bl sub_812256C
- ldr r1, _0804D174 @ =gMain
- movs r5, 0x87
- lsls r5, 3
- adds r1, r5
- b _0804D4B4
- .align 2, 0
-_0804D170: .4byte gUnknown_2031DA8
-_0804D174: .4byte gMain
-_0804D178:
- ldr r0, _0804D194 @ =gUnknown_2031DA8
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x36
- adds r1, 0x28
- movs r2, 0x1
- bl sub_812256C
- ldr r1, _0804D198 @ =gMain
- movs r7, 0x87
- lsls r7, 3
- adds r1, r7
- b _0804D4B4
- .align 2, 0
-_0804D194: .4byte gUnknown_2031DA8
-_0804D198: .4byte gMain
-_0804D19C:
- ldr r0, _0804D214 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r6, _0804D218 @ =gUnknown_2031C94
- ldr r1, [r6]
- ldr r5, _0804D21C @ =gDecompressionBuffer
- str r5, [sp]
- movs r4, 0x3
- str r4, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_808BEB4
- bl GetMultiplayerId
- lsls r0, 24
- movs r1, 0x80
- lsls r1, 17
- eors r1, r0
- lsrs r1, 24
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- ldr r1, _0804D220 @ =gLinkPlayers + 8
- adds r0, r1
- ldr r1, [r6, 0xC]
- str r5, [sp]
- str r4, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_808BEB4
- ldr r4, _0804D224 @ =gUnknown_8261ECC
- ldr r0, [r4]
- ldr r1, [r6, 0x18]
- str r5, [sp]
- movs r2, 0x2
- str r2, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_808BEB4
- ldr r0, [r4, 0x4]
- ldr r1, [r6, 0x20]
- movs r2, 0x18
- bl sub_804F728
- ldr r1, _0804D228 @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
-_0804D200:
- ldrb r0, [r1]
- adds r0, 0x1
- movs r2, 0
- strb r0, [r1]
- ldr r0, _0804D22C @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0xA8
- strb r2, [r0]
- b _0804D4D2
- .align 2, 0
-_0804D214: .4byte gSaveBlock2Ptr
-_0804D218: .4byte gUnknown_2031C94
-_0804D21C: .4byte gDecompressionBuffer
-_0804D220: .4byte gLinkPlayers + 8
-_0804D224: .4byte gUnknown_8261ECC
-_0804D228: .4byte gMain
-_0804D22C: .4byte gUnknown_2031DA8
-_0804D230:
- bl sub_804F610
- lsls r0, 24
- cmp r0, 0
- bne _0804D23C
- b _0804D4D2
-_0804D23C:
- ldr r1, _0804D248 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _0804D4B4
- .align 2, 0
-_0804D248: .4byte gMain
-_0804D24C:
- ldr r0, _0804D30C @ =gSaveBlock2Ptr
- ldr r1, [r0]
- movs r0, 0x1
- movs r2, 0
- bl GetStringWidth
- adds r1, r0, 0
- movs r0, 0x38
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- movs r6, 0
- add r5, sp, 0xC
- ldr r3, _0804D310 @ =gTradeUnknownSpriteCoords
- mov r8, r3
- asrs r0, 1
- ldrb r7, [r3, 0x4]
- adds r4, r0, r7
-_0804D270:
- add r1, sp, 0xC
- ldr r0, _0804D314 @ =gUnknown_8261CC8
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldrh r0, [r5]
- adds r0, r6
- strh r0, [r5]
- lsls r1, r4, 16
- asrs r1, 16
- add r0, sp, 0xC
- mov r3, r8
- ldrb r2, [r3, 0x5]
- movs r3, 0x1
- bl CreateSprite
- adds r4, 0x20
- adds r6, 0x1
- cmp r6, 0x2
- ble _0804D270
- bl GetMultiplayerId
- lsls r0, 24
- movs r1, 0x80
- lsls r1, 17
- eors r1, r0
- lsrs r1, 24
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- ldr r1, _0804D318 @ =gLinkPlayers + 8
- adds r1, r0, r1
- movs r0, 0x1
- movs r2, 0
- bl GetStringWidth
- adds r1, r0, 0
- movs r0, 0x38
- subs r0, r1
- lsrs r1, r0, 31
- adds r0, r1
- movs r6, 0
- add r5, sp, 0xC
- ldr r7, _0804D310 @ =gTradeUnknownSpriteCoords
- mov r8, r7
- asrs r0, 1
- mov r1, r8
- ldrb r1, [r1, 0x6]
- adds r4, r0, r1
-_0804D2D4:
- add r1, sp, 0xC
- ldr r0, _0804D314 @ =gUnknown_8261CC8
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- adds r0, r6, 0x3
- ldrh r1, [r5]
- adds r0, r1
- strh r0, [r5]
- lsls r1, r4, 16
- asrs r1, 16
- add r0, sp, 0xC
- mov r3, r8
- ldrb r2, [r3, 0x7]
- movs r3, 0x1
- bl CreateSprite
- adds r4, 0x20
- adds r6, 0x1
- cmp r6, 0x2
- ble _0804D2D4
- ldr r1, _0804D31C @ =gMain
- movs r5, 0x87
- lsls r5, 3
- adds r1, r5
- b _0804D4B4
- .align 2, 0
-_0804D30C: .4byte gSaveBlock2Ptr
-_0804D310: .4byte gTradeUnknownSpriteCoords
-_0804D314: .4byte gUnknown_8261CC8
-_0804D318: .4byte gLinkPlayers + 8
-_0804D31C: .4byte gMain
-_0804D320:
- ldr r4, _0804D3B0 @ =gUnknown_8261CC8
- add r1, sp, 0xC
- adds r0, r4, 0
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r5,r7}
- stm r1!, {r2,r5,r7}
- add r1, sp, 0xC
- adds r0, r1, 0
- ldrh r0, [r0]
- adds r0, 0x6
- strh r0, [r1]
- adds r0, r1, 0
- movs r1, 0xD7
- movs r2, 0x97
- movs r3, 0x1
- bl CreateSprite
- add r0, sp, 0xC
- ldm r4!, {r3,r5,r7}
- stm r0!, {r3,r5,r7}
- ldm r4!, {r1-r3}
- stm r0!, {r1-r3}
- add r1, sp, 0xC
- adds r0, r1, 0
- ldrh r0, [r0]
- adds r0, 0x7
- strh r0, [r1]
- adds r0, r1, 0
- movs r1, 0xF7
- movs r2, 0x97
- movs r3, 0x1
- bl CreateSprite
- movs r6, 0
- add r4, sp, 0xC
- movs r5, 0xC0
- lsls r5, 13
-_0804D36C:
- add r1, sp, 0xC
- ldr r0, _0804D3B0 @ =gUnknown_8261CC8
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- adds r0, r6, 0
- adds r0, 0x8
- ldrh r7, [r4]
- adds r0, r7
- strh r0, [r4]
- asrs r1, r5, 16
- add r0, sp, 0xC
- movs r2, 0x96
- movs r3, 0x1
- bl CreateSprite
- movs r0, 0x80
- lsls r0, 14
- adds r5, r0
- adds r6, 0x1
- cmp r6, 0x5
- ble _0804D36C
- ldr r4, _0804D3B4 @ =gUnknown_2031DA8
- ldr r0, [r4]
- adds r0, 0x35
- ldrb r0, [r0]
- cmp r0, 0x5
- bhi _0804D3B8
- bl sub_8138B20
- ldr r1, [r4]
- b _0804D3C0
- .align 2, 0
-_0804D3B0: .4byte gUnknown_8261CC8
-_0804D3B4: .4byte gUnknown_2031DA8
-_0804D3B8:
- bl sub_8138B20
- ldr r1, [r4]
- adds r0, 0x6
-_0804D3C0:
- adds r1, 0x35
- strb r0, [r1]
- ldr r0, _0804D404 @ =gUnknown_8261CB0
- ldr r3, _0804D408 @ =gTradeMonSpriteCoords
- ldr r4, _0804D40C @ =gUnknown_2031DA8
- ldr r1, [r4]
- adds r1, 0x35
- ldrb r2, [r1]
- lsls r2, 1
- adds r1, r2, r3
- ldrb r1, [r1]
- lsls r1, 19
- movs r5, 0x80
- lsls r5, 14
- adds r1, r5
- asrs r1, 16
- adds r3, 0x1
- adds r2, r3
- ldrb r2, [r2]
- lsls r2, 3
- movs r3, 0x2
- bl CreateSprite
- ldr r1, [r4]
- adds r1, 0x34
- strb r0, [r1]
- ldr r0, _0804D410 @ =gMain
- movs r7, 0x87
- lsls r7, 3
- adds r0, r7
- movs r1, 0x10
- strb r1, [r0]
- b _0804D4D2
- .align 2, 0
-_0804D404: .4byte gUnknown_8261CB0
-_0804D408: .4byte gTradeMonSpriteCoords
-_0804D40C: .4byte gUnknown_2031DA8
-_0804D410: .4byte gMain
-_0804D414:
- movs r0, 0
- bl sub_804D694
- b _0804D4AC
-_0804D41C:
- movs r0, 0x1
- bl sub_804D694
- ldr r2, _0804D43C @ =gUnknown_2031DA8
- ldr r0, [r2]
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r2]
- strb r1, [r0, 0x1]
- bl sub_804D764
- ldr r1, _0804D440 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _0804D4B4
- .align 2, 0
-_0804D43C: .4byte gUnknown_2031DA8
-_0804D440: .4byte gMain
-_0804D444:
- ldr r2, _0804D478 @ =gPaletteFade
- ldrb r1, [r2, 0x8]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x8]
- movs r4, 0x1
- negs r4, r4
- adds r0, r4, 0
- movs r1, 0x10
- movs r2, 0
- bl BlendPalettes
- movs r0, 0
- str r0, [sp]
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r1, _0804D47C @ =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _0804D4B4
- .align 2, 0
-_0804D478: .4byte gPaletteFade
-_0804D47C: .4byte gMain
-_0804D480:
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0x2
- bl sub_804D694
- ldr r1, _0804D49C @ =gMain
- movs r5, 0x87
- lsls r5, 3
- adds r1, r5
- b _0804D4B4
- .align 2, 0
-_0804D49C: .4byte gMain
-_0804D4A0:
- movs r7, 0x87
- lsls r7, 3
- adds r1, r2, r7
- b _0804D4B4
-_0804D4A8:
- bl sub_804F964
-_0804D4AC:
- ldr r1, _0804D4BC @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
-_0804D4B4:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _0804D4D2
- .align 2, 0
-_0804D4BC: .4byte gMain
-_0804D4C0:
- ldr r0, _0804D4F0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0804D4D2
- ldr r0, _0804D4F4 @ =sub_804D638
- bl SetMainCallback2
-_0804D4D2:
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- add sp, 0x24
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0804D4F0: .4byte gPaletteFade
-_0804D4F4: .4byte sub_804D638
- thumb_func_end sub_804CF14
-
- thumb_func_start sub_804D4F8
-sub_804D4F8: @ 804D4F8
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_804D4F8
-
- thumb_func_start sub_804D50C
-sub_804D50C: @ 804D50C
- push {r4,lr}
- sub sp, 0x4
- ldr r4, _0804D544 @ =gUnknown_2031DA8
- ldr r1, [r4]
- adds r1, 0xA8
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xF
- bls _0804D53C
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, [r4]
- adds r0, 0x6F
- movs r1, 0xA
- strb r1, [r0]
-_0804D53C:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0804D544: .4byte gUnknown_2031DA8
- thumb_func_end sub_804D50C
-
- thumb_func_start sub_804D548
-sub_804D548: @ 804D548
- push {r4,lr}
- ldr r0, _0804D580 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0804D59E
- ldr r1, _0804D584 @ =gUnknown_2031DA4
- ldr r4, _0804D588 @ =gUnknown_2031DA8
- ldr r2, [r4]
- adds r0, r2, 0
- adds r0, 0x35
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r2, 0
- adds r0, 0x7E
- ldrb r0, [r0]
- strb r0, [r1, 0x1]
- ldr r0, _0804D58C @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804D590
- adds r1, r2, 0
- adds r1, 0x6F
- movs r0, 0x10
- strb r0, [r1]
- b _0804D59E
- .align 2, 0
-_0804D580: .4byte gPaletteFade
-_0804D584: .4byte gUnknown_2031DA4
-_0804D588: .4byte gUnknown_2031DA8
-_0804D58C: .4byte gWirelessCommType
-_0804D590:
- movs r0, 0x20
- bl sub_800AA80
- ldr r0, [r4]
- adds r0, 0x6F
- movs r1, 0xD
- strb r1, [r0]
-_0804D59E:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_804D548
-
- thumb_func_start sub_804D5A4
-sub_804D5A4: @ 804D5A4
- push {r4,r5,lr}
- ldr r5, _0804D5E4 @ =gMain
- ldr r0, _0804D5E8 @ =sub_804C718
- str r0, [r5, 0x8]
- ldr r0, _0804D5EC @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804D5FC
- bl IsLinkRfuTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _0804D620
- ldr r0, _0804D5F0 @ =gUnknown_2031C90
- ldr r0, [r0]
- bl Free
- bl FreeAllWindowBuffers
- ldr r0, _0804D5F4 @ =gUnknown_2031DA8
- ldr r0, [r0]
- bl Free
- movs r0, 0
- str r0, [r5]
- bl DestroyWirelessStatusIndicatorSprite
- ldr r0, _0804D5F8 @ =sub_8050138
- bl SetMainCallback2
- b _0804D620
- .align 2, 0
-_0804D5E4: .4byte gMain
-_0804D5E8: .4byte sub_804C718
-_0804D5EC: .4byte gWirelessCommType
-_0804D5F0: .4byte gUnknown_2031C90
-_0804D5F4: .4byte gUnknown_2031DA8
-_0804D5F8: .4byte sub_8050138
-_0804D5FC:
- ldr r0, _0804D628 @ =gReceivedRemoteLinkPlayers
- ldrb r4, [r0]
- cmp r4, 0
- bne _0804D620
- ldr r0, _0804D62C @ =gUnknown_2031C90
- ldr r0, [r0]
- bl Free
- bl FreeAllWindowBuffers
- ldr r0, _0804D630 @ =gUnknown_2031DA8
- ldr r0, [r0]
- bl Free
- str r4, [r5]
- ldr r0, _0804D634 @ =sub_8050138
- bl SetMainCallback2
-_0804D620:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0804D628: .4byte gReceivedRemoteLinkPlayers
-_0804D62C: .4byte gUnknown_2031C90
-_0804D630: .4byte gUnknown_2031DA8
-_0804D634: .4byte sub_8050138
- thumb_func_end sub_804D5A4
-
- thumb_func_start sub_804D638
-sub_804D638: @ 804D638
- push {r4,lr}
- bl sub_804E9E4
- bl sub_804F4DC
- movs r0, 0
- bl sub_804EAE4
- movs r0, 0x1
- bl sub_804EAE4
- ldr r4, _0804D690 @ =gUnknown_2031DA8
- ldr r2, [r4]
- ldrb r1, [r2]
- adds r0, r1, 0x1
- strb r0, [r2]
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x18
- bl SetGpuReg
- ldr r2, [r4]
- ldrb r1, [r2, 0x1]
- adds r0, r1, 0
- adds r0, 0xFF
- strb r0, [r2, 0x1]
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x1C
- bl SetGpuReg
- bl RunTextPrinters_CheckPrinter0Active
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0804D690: .4byte gUnknown_2031DA8
- thumb_func_end sub_804D638
-
- thumb_func_start sub_804D694
-sub_804D694: @ 804D694
- push {r4,r5,lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x1
- beq _0804D700
- cmp r4, 0x1
- bgt _0804D6AA
- cmp r4, 0
- beq _0804D6B0
- b _0804D75A
-_0804D6AA:
- cmp r4, 0x2
- beq _0804D728
- b _0804D75A
-_0804D6B0:
- ldr r0, _0804D6F0 @ =gUnknown_8E9CEDC
- movs r1, 0
- movs r2, 0x60
- bl LoadPalette
- ldr r1, _0804D6F4 @ =gUnknown_8E9CF5C
- movs r2, 0x94
- lsls r2, 5
- movs r0, 0x1
- movs r3, 0
- bl LoadBgTiles
- ldr r1, _0804D6F8 @ =gUnknown_8E9E9FC
- movs r0, 0x20
- str r0, [sp]
- movs r0, 0x14
- str r0, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBufferRect_ChangePalette
- ldr r1, _0804D6FC @ =gUnknown_8260C30
- movs r2, 0x80
- lsls r2, 4
- movs r0, 0x2
- movs r3, 0
- bl LoadBgTilemap
- b _0804D75A
- .align 2, 0
-_0804D6F0: .4byte gUnknown_8E9CEDC
-_0804D6F4: .4byte gUnknown_8E9CF5C
-_0804D6F8: .4byte gUnknown_8E9E9FC
-_0804D6FC: .4byte gUnknown_8260C30
-_0804D700:
- ldr r1, _0804D724 @ =gUnknown_8261430
- movs r2, 0x80
- lsls r2, 4
- movs r0, 0x3
- movs r3, 0
- bl LoadBgTilemap
- movs r0, 0
- bl sub_804F284
- movs r0, 0x1
- bl sub_804F284
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- b _0804D75A
- .align 2, 0
-_0804D724: .4byte gUnknown_8261430
-_0804D728:
- movs r5, 0x80
- lsls r5, 21
- movs r4, 0x3
-_0804D72E:
- lsrs r0, r5, 24
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x80
- lsls r0, 18
- adds r5, r0
- subs r4, 0x1
- cmp r4, 0
- bge _0804D72E
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
-_0804D75A:
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_804D694
-
- thumb_func_start sub_804D764
-sub_804D764: @ 804D764
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- movs r3, 0
- ldr r5, _0804D7B4 @ =gUnknown_2031DA8
- mov r8, r5
- ldr r0, _0804D7B8 @ =gSprites
- mov r12, r0
- movs r1, 0x5
- negs r1, r1
- mov r9, r1
- movs r4, 0x6
- movs r7, 0x1
- movs r6, 0
-_0804D782:
- mov r1, r8
- ldr r0, [r1]
- adds r1, r0, 0
- adds r1, 0x36
- ldrb r1, [r1]
- cmp r3, r1
- bge _0804D7BC
- adds r0, 0x28
- adds r0, r3
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- add r1, r12
- adds r1, 0x3E
- ldrb r2, [r1]
- mov r0, r9
- ands r0, r2
- strb r0, [r1]
- ldr r0, [r5]
- adds r0, 0x38
- adds r0, r3
- strb r7, [r0]
- b _0804D7C2
- .align 2, 0
-_0804D7B4: .4byte gUnknown_2031DA8
-_0804D7B8: .4byte gSprites
-_0804D7BC:
- adds r0, 0x38
- adds r0, r3
- strb r6, [r0]
-_0804D7C2:
- mov r1, r8
- ldr r0, [r1]
- adds r1, r0, 0
- adds r1, 0x37
- ldrb r1, [r1]
- cmp r3, r1
- bge _0804D7F2
- adds r0, 0x2E
- adds r0, r3
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- add r1, r12
- adds r1, 0x3E
- ldrb r2, [r1]
- mov r0, r9
- ands r0, r2
- strb r0, [r1]
- ldr r0, [r5]
- adds r0, 0x38
- adds r0, r4
- strb r7, [r0]
- b _0804D7F8
-_0804D7F2:
- adds r0, 0x38
- adds r0, r4
- strb r6, [r0]
-_0804D7F8:
- adds r4, 0x1
- adds r3, 0x1
- cmp r3, 0x5
- ble _0804D782
- ldr r0, [r5]
- adds r0, 0x44
- movs r1, 0x1
- strb r1, [r0]
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_804D764
-
- thumb_func_start sub_804D814
-sub_804D814: @ 804D814
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- movs r3, 0
- cmp r3, r2
- bcs _0804D82E
-_0804D820:
- adds r0, r5, r3
- adds r1, r4, r3
- ldrb r1, [r1]
- strb r1, [r0]
- adds r3, 0x1
- cmp r3, r2
- bcc _0804D820
-_0804D82E:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_804D814
-
- thumb_func_start shedinja_maker_maybe
-shedinja_maker_maybe: @ 804D834
- push {r4-r6,lr}
- sub sp, 0xC
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _0804D858 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x69
- ldrb r0, [r0]
- cmp r0, 0x15
- bls _0804D84E
- b _0804DB9E
-_0804D84E:
- lsls r0, 2
- ldr r1, _0804D85C @ =_0804D860
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0804D858: .4byte gUnknown_2031DA8
-_0804D85C: .4byte _0804D860
- .align 2, 0
-_0804D860:
- .4byte _0804D8B8
- .4byte _0804D8E4
- .4byte _0804DB78
- .4byte _0804D914
- .4byte _0804D928
- .4byte _0804D960
- .4byte _0804DB78
- .4byte _0804D97C
- .4byte _0804D990
- .4byte _0804D9C8
- .4byte _0804DB78
- .4byte _0804D9E4
- .4byte _0804D9F8
- .4byte _0804DA30
- .4byte _0804DB78
- .4byte _0804DA58
- .4byte _0804DA6C
- .4byte _0804DAA4
- .4byte _0804DB78
- .4byte _0804DACC
- .4byte _0804DAE0
- .4byte _0804DB14
-_0804D8B8:
- ldr r0, _0804D8D8 @ =gBlockSendBuffer
- ldr r1, _0804D8DC @ =gPlayerParty
- movs r2, 0xC8
- bl sub_804D814
- ldr r3, _0804D8E0 @ =gUnknown_2031DA8
- ldr r1, [r3]
- adds r1, 0x69
- ldrb r0, [r1]
- adds r0, 0x1
- movs r2, 0
- strb r0, [r1]
- ldr r0, [r3]
- adds r0, 0xA8
- strb r2, [r0]
- b _0804DB9E
- .align 2, 0
-_0804D8D8: .4byte gBlockSendBuffer
-_0804D8DC: .4byte gPlayerParty
-_0804D8E0: .4byte gUnknown_2031DA8
-_0804D8E4:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- bne _0804D8F0
- b _0804DB9E
-_0804D8F0:
- bl GetBlockReceivedStatus
- lsls r0, 24
- cmp r0, 0
- bne _0804D904
- ldr r0, _0804D900 @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804D900: .4byte gUnknown_2031DA8
-_0804D904:
- bl ResetBlockReceivedFlags
- ldr r0, _0804D910 @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804D910: .4byte gUnknown_2031DA8
-_0804D914:
- cmp r5, 0
- bne _0804D91E
- movs r0, 0x1
- bl sub_800A474
-_0804D91E:
- ldr r0, _0804D924 @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804D924: .4byte gUnknown_2031DA8
-_0804D928:
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _0804D936
- b _0804DB9E
-_0804D936:
- ldr r0, _0804D954 @ =gEnemyParty
- movs r2, 0x1
- adds r1, r5, 0
- eors r1, r2
- lsls r1, 8
- ldr r2, _0804D958 @ =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0xC8
- bl sub_804D814
- bl ResetBlockReceivedFlags
- ldr r0, _0804D95C @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804D954: .4byte gEnemyParty
-_0804D958: .4byte gBlockRecvBuffer
-_0804D95C: .4byte gUnknown_2031DA8
-_0804D960:
- ldr r0, _0804D970 @ =gBlockSendBuffer
- ldr r1, _0804D974 @ =gUnknown_202434C
- movs r2, 0xC8
- bl sub_804D814
- ldr r0, _0804D978 @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804D970: .4byte gBlockSendBuffer
-_0804D974: .4byte gUnknown_202434C
-_0804D978: .4byte gUnknown_2031DA8
-_0804D97C:
- cmp r5, 0
- bne _0804D986
- movs r0, 0x1
- bl sub_800A474
-_0804D986:
- ldr r0, _0804D98C @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804D98C: .4byte gUnknown_2031DA8
-_0804D990:
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _0804D99E
- b _0804DB9E
-_0804D99E:
- ldr r0, _0804D9BC @ =gUnknown_20240F4
- movs r2, 0x1
- adds r1, r5, 0
- eors r1, r2
- lsls r1, 8
- ldr r2, _0804D9C0 @ =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0xC8
- bl sub_804D814
- bl ResetBlockReceivedFlags
- ldr r0, _0804D9C4 @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804D9BC: .4byte gUnknown_20240F4
-_0804D9C0: .4byte gBlockRecvBuffer
-_0804D9C4: .4byte gUnknown_2031DA8
-_0804D9C8:
- ldr r0, _0804D9D8 @ =gBlockSendBuffer
- ldr r1, _0804D9DC @ =gUnknown_2024414
- movs r2, 0xC8
- bl sub_804D814
- ldr r0, _0804D9E0 @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804D9D8: .4byte gBlockSendBuffer
-_0804D9DC: .4byte gUnknown_2024414
-_0804D9E0: .4byte gUnknown_2031DA8
-_0804D9E4:
- cmp r5, 0
- bne _0804D9EE
- movs r0, 0x1
- bl sub_800A474
-_0804D9EE:
- ldr r0, _0804D9F4 @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804D9F4: .4byte gUnknown_2031DA8
-_0804D9F8:
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _0804DA06
- b _0804DB9E
-_0804DA06:
- ldr r0, _0804DA24 @ =gUnknown_20241BC
- movs r2, 0x1
- adds r1, r5, 0
- eors r1, r2
- lsls r1, 8
- ldr r2, _0804DA28 @ =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0xC8
- bl sub_804D814
- bl ResetBlockReceivedFlags
- ldr r0, _0804DA2C @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804DA24: .4byte gUnknown_20241BC
-_0804DA28: .4byte gBlockRecvBuffer
-_0804DA2C: .4byte gUnknown_2031DA8
-_0804DA30:
- ldr r0, _0804DA48 @ =gBlockSendBuffer
- ldr r1, _0804DA4C @ =gSaveBlock1Ptr
- ldr r1, [r1]
- ldr r2, _0804DA50 @ =0x00002cd0
- adds r1, r2
- movs r2, 0xDC
- bl sub_804D814
- ldr r0, _0804DA54 @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804DA48: .4byte gBlockSendBuffer
-_0804DA4C: .4byte gSaveBlock1Ptr
-_0804DA50: .4byte 0x00002cd0
-_0804DA54: .4byte gUnknown_2031DA8
-_0804DA58:
- cmp r5, 0
- bne _0804DA62
- movs r0, 0x3
- bl sub_800A474
-_0804DA62:
- ldr r0, _0804DA68 @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804DA68: .4byte gUnknown_2031DA8
-_0804DA6C:
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- beq _0804DA7A
- b _0804DB9E
-_0804DA7A:
- ldr r0, _0804DA98 @ =gUnknown_2031CCC
- movs r2, 0x1
- adds r1, r5, 0
- eors r1, r2
- lsls r1, 8
- ldr r2, _0804DA9C @ =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0xD8
- bl sub_804D814
- bl ResetBlockReceivedFlags
- ldr r0, _0804DAA0 @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804DA98: .4byte gUnknown_2031CCC
-_0804DA9C: .4byte gBlockRecvBuffer
-_0804DAA0: .4byte gUnknown_2031DA8
-_0804DAA4:
- ldr r0, _0804DABC @ =gBlockSendBuffer
- ldr r1, _0804DAC0 @ =gSaveBlock1Ptr
- ldr r1, [r1]
- ldr r2, _0804DAC4 @ =0x0000309c
- adds r1, r2
- movs r2, 0xB
- bl sub_804D814
- ldr r0, _0804DAC8 @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804DABC: .4byte gBlockSendBuffer
-_0804DAC0: .4byte gSaveBlock1Ptr
-_0804DAC4: .4byte 0x0000309c
-_0804DAC8: .4byte gUnknown_2031DA8
-_0804DACC:
- cmp r5, 0
- bne _0804DAD6
- movs r0, 0x4
- bl sub_800A474
-_0804DAD6:
- ldr r0, _0804DADC @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804DB96
- .align 2, 0
-_0804DADC: .4byte gUnknown_2031DA8
-_0804DAE0:
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bne _0804DB9E
- ldr r4, _0804DB0C @ =gUnknown_2031DA8
- ldr r0, [r4]
- adds r0, 0xA9
- movs r2, 0x1
- adds r1, r5, 0
- eors r1, r2
- lsls r1, 8
- ldr r2, _0804DB10 @ =gBlockRecvBuffer
- adds r1, r2
- movs r2, 0xB
- bl sub_804D814
- bl ResetBlockReceivedFlags
- ldr r1, [r4]
- b _0804DB96
- .align 2, 0
-_0804DB0C: .4byte gUnknown_2031DA8
-_0804DB10: .4byte gBlockRecvBuffer
-_0804DB14:
- ldr r4, _0804DB68 @ =gEnemyParty
- ldr r6, _0804DB6C @ =0x0000012f
- movs r5, 0x5
-_0804DB1A:
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- beq _0804DB5A
- cmp r0, r6
- bne _0804DB5A
- adds r0, r4, 0
- movs r1, 0x3
- bl GetMonData
- cmp r0, 0x1
- beq _0804DB5A
- adds r0, r4, 0
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- mov r0, sp
- ldr r1, _0804DB70 @ =gUnknown_8262034
- bl StringCompareWithoutExtCtrlCodes
- cmp r0, 0
- bne _0804DB5A
- adds r0, r4, 0
- movs r1, 0x2
- ldr r2, _0804DB74 @ = gSpeciesNames + 0xD05
- bl SetMonData
-_0804DB5A:
- adds r4, 0x64
- subs r5, 0x1
- cmp r5, 0
- bge _0804DB1A
- movs r0, 0x1
- b _0804DBA0
- .align 2, 0
-_0804DB68: .4byte gEnemyParty
-_0804DB6C: .4byte 0x0000012f
-_0804DB70: .4byte gUnknown_8262034
-_0804DB74: .4byte gSpeciesNames+0xD05
-_0804DB78:
- ldr r2, _0804DBA8 @ =gUnknown_2031DA8
- ldr r1, [r2]
- adds r1, 0xA8
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r0, [r2]
- adds r1, r0, 0
- adds r1, 0xA8
- ldrb r0, [r1]
- cmp r0, 0xA
- bls _0804DB9E
- movs r0, 0
- strb r0, [r1]
- ldr r1, [r2]
-_0804DB96:
- adds r1, 0x69
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_0804DB9E:
- movs r0, 0
-_0804DBA0:
- add sp, 0xC
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_0804DBA8: .4byte gUnknown_2031DA8
- thumb_func_end shedinja_maker_maybe
-
- thumb_func_start sub_804DBAC
-sub_804DBAC: @ 804DBAC
- push {lr}
- ldr r0, _0804DBC8 @ =gUnknown_841E0A5
- ldr r1, _0804DBCC @ =gUnknown_2031DA8
- ldr r1, [r1]
- adds r1, 0x72
- ldrh r1, [r1]
- lsls r1, 5
- ldr r2, _0804DBD0 @ =0x06010000
- adds r1, r2
- movs r2, 0x18
- bl sub_804F728
- pop {r0}
- bx r0
- .align 2, 0
-_0804DBC8: .4byte gUnknown_841E0A5
-_0804DBCC: .4byte gUnknown_2031DA8
-_0804DBD0: .4byte 0x06010000
- thumb_func_end sub_804DBAC
-
- thumb_func_start sub_804DBD4
-sub_804DBD4: @ 804DBD4
- push {r4,lr}
- lsls r1, 24
- lsrs r4, r1, 24
- movs r2, 0x1
- adds r0, r4, 0
- ands r0, r2
- cmp r0, 0
- beq _0804DC58
- ldr r0, _0804DBFC @ =gBlockRecvBuffer
- ldrh r1, [r0]
- ldr r0, _0804DC00 @ =0x0000bbbb
- cmp r1, r0
- beq _0804DC38
- cmp r1, r0
- bgt _0804DC08
- ldr r0, _0804DC04 @ =0x0000aabb
- cmp r1, r0
- beq _0804DC28
- b _0804DC52
- .align 2, 0
-_0804DBFC: .4byte gBlockRecvBuffer
-_0804DC00: .4byte 0x0000bbbb
-_0804DC04: .4byte 0x0000aabb
-_0804DC08:
- ldr r0, _0804DC1C @ =0x0000bbcc
- cmp r1, r0
- beq _0804DC48
- ldr r0, _0804DC20 @ =0x0000eeaa
- cmp r1, r0
- bne _0804DC52
- ldr r0, _0804DC24 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x78
- b _0804DC4E
- .align 2, 0
-_0804DC1C: .4byte 0x0000bbcc
-_0804DC20: .4byte 0x0000eeaa
-_0804DC24: .4byte gUnknown_2031DA8
-_0804DC28:
- ldr r0, _0804DC34 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x78
- strb r2, [r0]
- b _0804DC52
- .align 2, 0
-_0804DC34: .4byte gUnknown_2031DA8
-_0804DC38:
- ldr r0, _0804DC44 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x7A
- strb r2, [r0]
- b _0804DC52
- .align 2, 0
-_0804DC44: .4byte gUnknown_2031DA8
-_0804DC48:
- ldr r0, _0804DC80 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x7A
-_0804DC4E:
- movs r1, 0x2
- strb r1, [r0]
-_0804DC52:
- movs r0, 0
- bl ResetBlockReceivedFlag
-_0804DC58:
- movs r2, 0x2
- adds r0, r4, 0
- ands r0, r2
- cmp r0, 0
- beq _0804DCEA
- ldr r3, _0804DC84 @ =gBlockRecvBuffer
- movs r1, 0x80
- lsls r1, 1
- adds r0, r3, r1
- ldrh r1, [r0]
- ldr r0, _0804DC88 @ =0x0000bbbb
- cmp r1, r0
- beq _0804DCCC
- cmp r1, r0
- bgt _0804DC90
- ldr r0, _0804DC8C @ =0x0000aabb
- cmp r1, r0
- beq _0804DCB0
- b _0804DCE4
- .align 2, 0
-_0804DC80: .4byte gUnknown_2031DA8
-_0804DC84: .4byte gBlockRecvBuffer
-_0804DC88: .4byte 0x0000bbbb
-_0804DC8C: .4byte 0x0000aabb
-_0804DC90:
- ldr r0, _0804DCA4 @ =0x0000bbcc
- cmp r1, r0
- beq _0804DCDC
- ldr r0, _0804DCA8 @ =0x0000eeaa
- cmp r1, r0
- bne _0804DCE4
- ldr r0, _0804DCAC @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x79
- b _0804DCE2
- .align 2, 0
-_0804DCA4: .4byte 0x0000bbcc
-_0804DCA8: .4byte 0x0000eeaa
-_0804DCAC: .4byte gUnknown_2031DA8
-_0804DCB0:
- ldr r2, _0804DCC8 @ =gUnknown_2031DA8
- ldr r1, [r2]
- movs r4, 0x81
- lsls r4, 1
- adds r0, r3, r4
- ldrb r0, [r0]
- adds r0, 0x6
- adds r1, 0x7E
- strb r0, [r1]
- ldr r0, [r2]
- adds r0, 0x79
- b _0804DCD2
- .align 2, 0
-_0804DCC8: .4byte gUnknown_2031DA8
-_0804DCCC:
- ldr r0, _0804DCD8 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x7B
-_0804DCD2:
- movs r1, 0x1
- strb r1, [r0]
- b _0804DCE4
- .align 2, 0
-_0804DCD8: .4byte gUnknown_2031DA8
-_0804DCDC:
- ldr r0, _0804DCF0 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x7B
-_0804DCE2:
- strb r2, [r0]
-_0804DCE4:
- movs r0, 0x1
- bl ResetBlockReceivedFlag
-_0804DCEA:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0804DCF0: .4byte gUnknown_2031DA8
- thumb_func_end sub_804DBD4
-
- thumb_func_start sub_804DCF4
-sub_804DCF4: @ 804DCF4
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r1, 24
- lsrs r5, r1, 24
- movs r0, 0x1
- ands r0, r5
- cmp r0, 0
- beq _0804DDD6
- ldr r2, _0804DD20 @ =gBlockRecvBuffer
- ldrh r1, [r2]
- ldr r0, _0804DD24 @ =0x0000ddee
- cmp r1, r0
- beq _0804DDC0
- cmp r1, r0
- bgt _0804DD30
- ldr r0, _0804DD28 @ =0x0000ccdd
- cmp r1, r0
- beq _0804DDA0
- ldr r0, _0804DD2C @ =0x0000dddd
- cmp r1, r0
- beq _0804DD6C
- b _0804DDD0
- .align 2, 0
-_0804DD20: .4byte gBlockRecvBuffer
-_0804DD24: .4byte 0x0000ddee
-_0804DD28: .4byte 0x0000ccdd
-_0804DD2C: .4byte 0x0000dddd
-_0804DD30:
- ldr r0, _0804DD40 @ =0x0000eebb
- cmp r1, r0
- beq _0804DD44
- adds r0, 0x11
- cmp r1, r0
- beq _0804DD68
- b _0804DDD0
- .align 2, 0
-_0804DD40: .4byte 0x0000eebb
-_0804DD44:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- movs r0, 0x4
- bl sub_804F5BC
- ldr r0, _0804DD64 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x6F
- movs r1, 0xB
- b _0804DDCE
- .align 2, 0
-_0804DD64: .4byte gUnknown_2031DA8
-_0804DD68:
- movs r0, 0x5
- b _0804DDC2
-_0804DD6C:
- ldr r4, _0804DD9C @ =gUnknown_2031DA8
- ldr r1, [r4]
- ldrb r0, [r2, 0x2]
- adds r0, 0x6
- adds r1, 0x7E
- strb r0, [r1]
- movs r0, 0
- bl rbox_fill_rectangle
- ldr r0, [r4]
- adds r0, 0x35
- ldrb r0, [r0]
- bl sub_804EAAC
- ldr r0, [r4]
- adds r0, 0x7E
- ldrb r0, [r0]
- bl sub_804EAAC
- ldr r0, [r4]
- adds r0, 0x6F
- movs r1, 0x7
- b _0804DDCE
- .align 2, 0
-_0804DD9C: .4byte gUnknown_2031DA8
-_0804DDA0:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _0804DDBC @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x6F
- movs r1, 0xA
- b _0804DDCE
- .align 2, 0
-_0804DDBC: .4byte gUnknown_2031DA8
-_0804DDC0:
- movs r0, 0x1
-_0804DDC2:
- bl sub_804F5BC
- ldr r0, _0804DDEC @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x6F
- movs r1, 0x8
-_0804DDCE:
- strb r1, [r0]
-_0804DDD0:
- movs r0, 0
- bl ResetBlockReceivedFlag
-_0804DDD6:
- movs r0, 0x2
- ands r0, r5
- cmp r0, 0
- beq _0804DDE4
- movs r0, 0x1
- bl ResetBlockReceivedFlag
-_0804DDE4:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0804DDEC: .4byte gUnknown_2031DA8
- thumb_func_end sub_804DCF4
-
- thumb_func_start sub_804DDF0
-sub_804DDF0: @ 804DDF0
- push {r4-r6,lr}
- sub sp, 0x4
- ldr r6, _0804DE4C @ =gUnknown_2031DA8
- ldr r2, [r6]
- adds r1, r2, 0
- adds r1, 0x78
- ldrb r0, [r1]
- cmp r0, 0
- bne _0804DE04
- b _0804DF38
-_0804DE04:
- adds r0, r2, 0
- adds r0, 0x79
- ldrb r0, [r0]
- cmp r0, 0
- bne _0804DE10
- b _0804DF38
-_0804DE10:
- ldrh r1, [r1]
- ldr r0, _0804DE50 @ =0x00000101
- cmp r1, r0
- bne _0804DE58
- adds r1, r2, 0
- adds r1, 0x6F
- movs r0, 0x6
- strb r0, [r1]
- ldr r2, [r6]
- adds r1, r2, 0
- adds r1, 0x80
- movs r4, 0
- ldr r0, _0804DE54 @ =0x0000dddd
- strh r0, [r1]
- adds r0, r2, 0
- adds r0, 0x35
- ldrb r1, [r0]
- adds r0, 0x4D
- strh r1, [r0]
- movs r0, 0x5
- movs r1, 0
- bl sub_804F488
- ldr r0, [r6]
- adds r2, r0, 0
- adds r2, 0x79
- strb r4, [r2]
- adds r0, 0x78
- strb r4, [r0]
- b _0804DF38
- .align 2, 0
-_0804DE4C: .4byte gUnknown_2031DA8
-_0804DE50: .4byte 0x00000101
-_0804DE54: .4byte 0x0000dddd
-_0804DE58:
- ldr r0, _0804DEA0 @ =0x00000201
- cmp r1, r0
- bne _0804DEA8
- movs r0, 0x1
- bl sub_804F5BC
- ldr r1, [r6]
- adds r2, r1, 0
- adds r2, 0x80
- movs r4, 0
- movs r3, 0
- ldr r0, _0804DEA4 @ =0x0000eecc
- strh r0, [r2]
- adds r1, 0x82
- strh r3, [r1]
- movs r0, 0x5
- movs r1, 0
- bl sub_804F488
- ldr r0, [r6]
- adds r1, r0, 0
- adds r1, 0x7B
- strb r4, [r1]
- adds r0, 0x7A
- strb r4, [r0]
- ldr r0, [r6]
- adds r1, r0, 0
- adds r1, 0x79
- strb r4, [r1]
- adds r0, 0x78
- strb r4, [r0]
- ldr r0, [r6]
- adds r0, 0x6F
- movs r1, 0x8
- b _0804DF36
- .align 2, 0
-_0804DEA0: .4byte 0x00000201
-_0804DEA4: .4byte 0x0000eecc
-_0804DEA8:
- movs r0, 0x81
- lsls r0, 1
- cmp r1, r0
- bne _0804DEF4
- movs r0, 0x5
- bl sub_804F5BC
- ldr r1, [r6]
- adds r2, r1, 0
- adds r2, 0x80
- movs r4, 0
- movs r3, 0
- ldr r0, _0804DEF0 @ =0x0000ddee
- strh r0, [r2]
- adds r1, 0x82
- strh r3, [r1]
- movs r0, 0x5
- movs r1, 0
- bl sub_804F488
- ldr r0, [r6]
- adds r1, r0, 0
- adds r1, 0x7B
- strb r4, [r1]
- adds r0, 0x7A
- strb r4, [r0]
- ldr r0, [r6]
- adds r1, r0, 0
- adds r1, 0x79
- strb r4, [r1]
- adds r0, 0x78
- strb r4, [r0]
- ldr r0, [r6]
- adds r0, 0x6F
- movs r1, 0x8
- b _0804DF36
- .align 2, 0
-_0804DEF0: .4byte 0x0000ddee
-_0804DEF4:
- ldr r0, _0804DFD8 @ =0x00000202
- cmp r1, r0
- bne _0804DF38
- adds r1, r2, 0
- adds r1, 0x80
- movs r5, 0
- movs r4, 0
- ldr r0, _0804DFDC @ =0x0000eebb
- strh r0, [r1]
- adds r0, r2, 0
- adds r0, 0x82
- strh r4, [r0]
- movs r0, 0x5
- movs r1, 0
- bl sub_804F488
- movs r0, 0x1
- negs r0, r0
- str r4, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, [r6]
- adds r1, r0, 0
- adds r1, 0x79
- strb r5, [r1]
- adds r0, 0x78
- strb r5, [r0]
- ldr r0, [r6]
- adds r0, 0x6F
- movs r1, 0xB
-_0804DF36:
- strb r1, [r0]
-_0804DF38:
- ldr r5, _0804DFE0 @ =gUnknown_2031DA8
- ldr r3, [r5]
- adds r1, r3, 0
- adds r1, 0x7A
- ldrb r0, [r1]
- cmp r0, 0
- beq _0804DFD0
- adds r0, r3, 0
- adds r0, 0x7B
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804DFD0
- ldrh r1, [r1]
- ldr r0, _0804DFE4 @ =0x00000101
- cmp r1, r0
- bne _0804DF86
- adds r1, r3, 0
- adds r1, 0x80
- movs r4, 0
- movs r2, 0
- ldr r0, _0804DFE8 @ =0x0000ccdd
- strh r0, [r1]
- adds r0, r3, 0
- adds r0, 0x82
- strh r2, [r0]
- movs r0, 0x5
- movs r1, 0
- bl sub_804F488
- ldr r0, [r5]
- adds r0, 0x7A
- strb r4, [r0]
- ldr r0, [r5]
- adds r0, 0x7B
- strb r4, [r0]
- ldr r0, [r5]
- adds r0, 0x6F
- movs r1, 0x9
- strb r1, [r0]
-_0804DF86:
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x7A
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _0804DF9C
- adds r0, r1, 0
- adds r0, 0x7B
- ldrb r0, [r0]
- cmp r0, 0x2
- bne _0804DFD0
-_0804DF9C:
- movs r0, 0x1
- bl sub_804F5BC
- ldr r1, [r5]
- adds r2, r1, 0
- adds r2, 0x80
- movs r4, 0
- movs r3, 0
- ldr r0, _0804DFEC @ =0x0000ddee
- strh r0, [r2]
- adds r1, 0x82
- strh r3, [r1]
- movs r0, 0x5
- movs r1, 0
- bl sub_804F488
- ldr r0, [r5]
- adds r0, 0x7A
- strb r4, [r0]
- ldr r0, [r5]
- adds r0, 0x7B
- strb r4, [r0]
- ldr r0, [r5]
- adds r0, 0x6F
- movs r1, 0x8
- strb r1, [r0]
-_0804DFD0:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0804DFD8: .4byte 0x00000202
-_0804DFDC: .4byte 0x0000eebb
-_0804DFE0: .4byte gUnknown_2031DA8
-_0804DFE4: .4byte 0x00000101
-_0804DFE8: .4byte 0x0000ccdd
-_0804DFEC: .4byte 0x0000ddee
- thumb_func_end sub_804DDF0
-
- thumb_func_start sub_804DFF0
-sub_804DFF0: @ 804DFF0
- push {r4,lr}
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r4, r0, 24
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _0804E018
- cmp r4, 0
- bne _0804E012
- movs r0, 0
- bl sub_804DBD4
- b _0804E018
-_0804E012:
- adds r0, r4, 0
- bl sub_804DCF4
-_0804E018:
- cmp r4, 0
- bne _0804E020
- bl sub_804DDF0
-_0804E020:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_804DFF0
-
- thumb_func_start sub_804E028
-sub_804E028: @ 804E028
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- movs r6, 0
- movs r5, 0
- ldr r2, _0804E05C @ =gUnknown_2031DA8
- ldr r3, [r2]
- ldr r4, _0804E060 @ =gUnknown_8261D08
- lsls r2, r1, 1
- adds r2, r1
- lsls r2, 1
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r3, 0x38
- adds r2, r1
- adds r2, r4
-_0804E04E:
- ldrb r1, [r2]
- adds r0, r3, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- bne _0804E064
- adds r6, r1, 0
- b _0804E06C
- .align 2, 0
-_0804E05C: .4byte gUnknown_2031DA8
-_0804E060: .4byte gUnknown_8261D08
-_0804E064:
- adds r2, 0x1
- adds r5, 0x1
- cmp r5, 0x5
- ble _0804E04E
-_0804E06C:
- adds r0, r6, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_804E028
-
- thumb_func_start TradeMenuMoveCursor
-TradeMenuMoveCursor: @ 804E074
- push {r4-r7,lr}
- adds r7, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldrb r0, [r7]
- bl sub_804E028
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0xC
- bne _0804E0CC
- ldr r5, _0804E0C4 @ =gUnknown_2031DA8
- ldr r0, [r5]
- adds r0, 0x34
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _0804E0C8 @ =gSprites
- adds r0, r4
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r2, [r5]
- adds r2, 0x34
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0xE0
- strh r1, [r0, 0x20]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0xA0
- strh r1, [r0, 0x22]
- b _0804E114
- .align 2, 0
-_0804E0C4: .4byte gUnknown_2031DA8
-_0804E0C8: .4byte gSprites
-_0804E0CC:
- ldr r4, _0804E128 @ =gUnknown_2031DA8
- ldr r0, [r4]
- adds r0, 0x34
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r5, _0804E12C @ =gSprites
- adds r0, r5
- movs r1, 0
- bl StartSpriteAnim
- ldr r4, [r4]
- adds r4, 0x34
- ldrb r0, [r4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- ldr r2, _0804E130 @ =gTradeMonSpriteCoords
- lsls r3, r6, 1
- adds r0, r3, r2
- ldrb r0, [r0]
- lsls r0, 3
- adds r0, 0x20
- strh r0, [r1, 0x20]
- ldrb r0, [r4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r5
- adds r2, 0x1
- adds r3, r2
- ldrb r0, [r3]
- lsls r0, 3
- strh r0, [r1, 0x22]
-_0804E114:
- ldrb r0, [r7]
- cmp r0, r6
- beq _0804E120
- movs r0, 0x5
- bl PlaySE
-_0804E120:
- strb r6, [r7]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0804E128: .4byte gUnknown_2031DA8
-_0804E12C: .4byte gSprites
-_0804E130: .4byte gTradeMonSpriteCoords
- thumb_func_end TradeMenuMoveCursor
-
- thumb_func_start sub_804E134
-sub_804E134: @ 804E134
- push {r4,lr}
- movs r0, 0
- bl sub_804F5BC
- ldr r4, _0804E17C @ =gUnknown_2031DA8
- ldr r0, [r4]
- adds r0, 0x6F
- movs r1, 0x5
- strb r1, [r0]
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0804E184
- ldr r2, [r4]
- adds r1, r2, 0
- adds r1, 0x80
- ldr r0, _0804E180 @ =0x0000aabb
- strh r0, [r1]
- adds r0, r2, 0
- adds r0, 0x35
- ldrb r1, [r0]
- adds r0, 0x4D
- strh r1, [r0]
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, [r4]
- adds r1, 0x80
- movs r2, 0x14
- bl SendBlock
- b _0804E18C
- .align 2, 0
-_0804E17C: .4byte gUnknown_2031DA8
-_0804E180: .4byte 0x0000aabb
-_0804E184:
- ldr r0, [r4]
- adds r0, 0x78
- movs r1, 0x1
- strb r1, [r0]
-_0804E18C:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_804E134
-
- thumb_func_start sub_804E194
-sub_804E194: @ 804E194
- push {r4,r5,lr}
- sub sp, 0xC
- ldr r0, _0804E1B4 @ =gMain
- ldrh r1, [r0, 0x30]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0804E1BC
- ldr r0, _0804E1B8 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x35
- movs r1, 0
- bl TradeMenuMoveCursor
- b _0804E208
- .align 2, 0
-_0804E1B4: .4byte gMain
-_0804E1B8: .4byte gUnknown_2031DA8
-_0804E1BC:
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0804E1D8
- ldr r0, _0804E1D4 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x35
- movs r1, 0x1
- bl TradeMenuMoveCursor
- b _0804E208
- .align 2, 0
-_0804E1D4: .4byte gUnknown_2031DA8
-_0804E1D8:
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0804E1F4
- ldr r0, _0804E1F0 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x35
- movs r1, 0x2
- bl TradeMenuMoveCursor
- b _0804E208
- .align 2, 0
-_0804E1F0: .4byte gUnknown_2031DA8
-_0804E1F4:
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _0804E208
- ldr r0, _0804E27C @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x35
- movs r1, 0x3
- bl TradeMenuMoveCursor
-_0804E208:
- ldr r0, _0804E280 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r5, 0x1
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- beq _0804E2DE
- movs r0, 0x5
- bl PlaySE
- ldr r4, _0804E27C @ =gUnknown_2031DA8
- ldr r0, [r4]
- adds r0, 0x35
- ldrb r0, [r0]
- cmp r0, 0x5
- bhi _0804E288
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0xE
- bl DrawTextBorderOuter
- movs r0, 0x1
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r0, _0804E284 @ =gUnknown_8261EE4
- str r0, [sp]
- movs r0, 0x1
- movs r1, 0x3
- movs r2, 0x10
- movs r3, 0x2
- bl UnionRoomAndTradeMenuPrintOptions
- movs r0, 0x10
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r0, 0x1
- movs r1, 0x3
- movs r2, 0
- movs r3, 0
- bl Menu_InitCursor
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0x1
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r0, [r4]
- adds r0, 0x6F
- movs r1, 0x1
- strb r1, [r0]
- b _0804E2DE
- .align 2, 0
-_0804E27C: .4byte gUnknown_2031DA8
-_0804E280: .4byte gMain
-_0804E284: .4byte gUnknown_8261EE4
-_0804E288:
- cmp r0, 0xB
- bhi _0804E2A6
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, [r4]
- adds r0, 0x6F
- movs r1, 0x2
- strb r1, [r0]
- b _0804E2DE
-_0804E2A6:
- cmp r0, 0xC
- bne _0804E2DE
- ldr r0, _0804E31C @ =gUnknown_8261FC4
- str r5, [sp]
- movs r1, 0xE
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x3
- movs r2, 0
- movs r3, 0x2
- bl CreateYesNoMenu
- ldr r0, [r4]
- adds r0, 0x6F
- movs r1, 0x4
- strb r1, [r0]
- ldr r0, _0804E320 @ =gUnknown_8261ECC
- ldr r0, [r0, 0x10]
- ldr r1, [r4]
- adds r1, 0x72
- ldrh r1, [r1]
- lsls r1, 5
- ldr r2, _0804E324 @ =0x06010000
- adds r1, r2
- movs r2, 0x18
- bl sub_804F728
-_0804E2DE:
- ldr r0, _0804E328 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _0804E314
- movs r2, 0
- ldr r3, _0804E32C @ =gUnknown_2031DA8
-_0804E2F0:
- ldr r0, [r3]
- lsls r1, r2, 1
- adds r0, 0x80
- adds r0, r1
- strh r2, [r0]
- adds r2, 0x1
- cmp r2, 0x9
- ble _0804E2F0
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0804E32C @ =gUnknown_2031DA8
- ldr r1, [r1]
- adds r1, 0x80
- movs r2, 0x14
- bl SendBlock
-_0804E314:
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0804E31C: .4byte gUnknown_8261FC4
-_0804E320: .4byte gUnknown_8261ECC
-_0804E324: .4byte 0x06010000
-_0804E328: .4byte gMain
-_0804E32C: .4byte gUnknown_2031DA8
- thumb_func_end sub_804E194
-
- thumb_func_start sub_804E330
-sub_804E330: @ 804E330
- push {lr}
- bl sub_804F3B4
- ldr r3, _0804E378 @ =gUnknown_2031DA8
- ldr r0, [r3]
- adds r0, 0x6F
- movs r1, 0
- strb r1, [r0]
- ldr r2, _0804E37C @ =gSprites
- ldr r0, [r3]
- adds r0, 0x34
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- ldr r0, _0804E380 @ =gUnknown_8261ECC
- ldr r0, [r0, 0x4]
- ldr r1, [r3]
- adds r1, 0x72
- ldrh r1, [r1]
- lsls r1, 5
- ldr r2, _0804E384 @ =0x06010000
- adds r1, r2
- movs r2, 0x18
- bl sub_804F728
- pop {r0}
- bx r0
- .align 2, 0
-_0804E378: .4byte gUnknown_2031DA8
-_0804E37C: .4byte gSprites
-_0804E380: .4byte gUnknown_8261ECC
-_0804E384: .4byte 0x06010000
- thumb_func_end sub_804E330
-
- thumb_func_start sub_804E388
-sub_804E388: @ 804E388
- push {lr}
- sub sp, 0x4
- bl Menu_ProcessInputNoWrapAround
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- beq _0804E3AA
- cmp r0, r1
- ble _0804E462
- cmp r0, 0
- beq _0804E3B6
- cmp r0, 0x1
- beq _0804E3D4
- b _0804E462
-_0804E3AA:
- movs r0, 0x5
- bl PlaySE
- bl sub_804E330
- b _0804E462
-_0804E3B6:
- str r0, [sp]
- adds r0, r1, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _0804E3D0 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x6F
- movs r1, 0x2
- b _0804E460
- .align 2, 0
-_0804E3D0: .4byte gUnknown_2031DA8
-_0804E3D4:
- ldr r0, _0804E3F4 @ =gPlayerParty
- ldr r1, _0804E3F8 @ =gPlayerPartyCount
- ldrb r1, [r1]
- ldr r2, _0804E3FC @ =gUnknown_2031DA8
- ldr r2, [r2]
- adds r2, 0x35
- ldrb r2, [r2]
- bl sub_804FA14
- cmp r0, 0x5
- bhi _0804E462
- lsls r0, 2
- ldr r1, _0804E400 @ =_0804E404
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0804E3F4: .4byte gPlayerParty
-_0804E3F8: .4byte gPlayerPartyCount
-_0804E3FC: .4byte gUnknown_2031DA8
-_0804E400: .4byte _0804E404
- .align 2, 0
-_0804E404:
- .4byte _0804E41C
- .4byte _0804E444
- .4byte _0804E44A
- .4byte _0804E450
- .4byte _0804E44A
- .4byte _0804E450
-_0804E41C:
- bl sub_804E134
- ldr r2, _0804E43C @ =gSprites
- ldr r0, _0804E440 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x34
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- b _0804E460
- .align 2, 0
-_0804E43C: .4byte gSprites
-_0804E440: .4byte gUnknown_2031DA8
-_0804E444:
- movs r0, 0x3
- movs r1, 0x3
- b _0804E454
-_0804E44A:
- movs r0, 0x3
- movs r1, 0x6
- b _0804E454
-_0804E450:
- movs r0, 0x3
- movs r1, 0x7
-_0804E454:
- bl sub_804F488
- ldr r0, _0804E468 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x6F
- movs r1, 0x8
-_0804E460:
- strb r1, [r0]
-_0804E462:
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0804E468: .4byte gUnknown_2031DA8
- thumb_func_end sub_804E388
-
- thumb_func_start sub_804E46C
-sub_804E46C: @ 804E46C
- push {lr}
- ldr r0, _0804E490 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0804E482
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0804E48C
-_0804E482:
- movs r0, 0x5
- bl PlaySE
- bl sub_804E330
-_0804E48C:
- pop {r0}
- bx r0
- .align 2, 0
-_0804E490: .4byte gMain
- thumb_func_end sub_804E46C
-
- thumb_func_start sub_804E494
-sub_804E494: @ 804E494
- push {r4,lr}
- sub sp, 0x4
- ldr r0, _0804E4CC @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0804E4FC
- ldr r0, _0804E4D0 @ =gUnknown_2031DA8
- ldr r2, [r0]
- adds r3, r2, 0
- adds r3, 0x35
- ldrb r1, [r3]
- cmp r1, 0x5
- bhi _0804E4DC
- ldr r0, _0804E4D4 @ =gPlayerParty
- ldrb r1, [r3]
- adds r2, 0x36
- ldrb r2, [r2]
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- ldr r3, _0804E4D8 @ =sub_804CF14
- movs r4, 0x4
- str r4, [sp]
- bl sub_81344F8
- b _0804E4F8
- .align 2, 0
-_0804E4CC: .4byte gPaletteFade
-_0804E4D0: .4byte gUnknown_2031DA8
-_0804E4D4: .4byte gPlayerParty
-_0804E4D8: .4byte sub_804CF14
-_0804E4DC:
- ldr r0, _0804E504 @ =gEnemyParty
- subs r1, 0x6
- lsls r1, 24
- lsrs r1, 24
- adds r2, 0x37
- ldrb r2, [r2]
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- ldr r3, _0804E508 @ =sub_804CF14
- movs r4, 0x4
- str r4, [sp]
- bl sub_81344F8
-_0804E4F8:
- bl FreeAllWindowBuffers
-_0804E4FC:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0804E504: .4byte gEnemyParty
-_0804E508: .4byte sub_804CF14
- thumb_func_end sub_804E494
-
- thumb_func_start sub_804E50C
-sub_804E50C: @ 804E50C
- push {r4-r7,lr}
- adds r5, r0, 0
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- movs r4, 0
- movs r3, 0
- ldr r6, _0804E588 @ =gUnknown_2031DA8
- ldr r7, _0804E58C @ =gEnemyParty
- cmp r4, r1
- bge _0804E538
-_0804E524:
- cmp r2, r3
- beq _0804E532
- adds r0, r5, r3
- ldrb r0, [r0]
- adds r0, r4, r0
- lsls r0, 24
- lsrs r4, r0, 24
-_0804E532:
- adds r3, 0x1
- cmp r3, r1
- blt _0804E524
-_0804E538:
- ldr r0, [r6]
- adds r0, 0x7E
- ldrb r0, [r0]
- movs r1, 0x6
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- movs r5, 0x64
- muls r0, r5
- adds r0, r7
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r1, r0, 16
- movs r0, 0xCD
- lsls r0, 1
- cmp r1, r0
- beq _0804E564
- cmp r1, 0x97
- bne _0804E590
-_0804E564:
- ldr r0, [r6]
- adds r0, 0x7E
- ldrb r0, [r0]
- movs r1, 0x6
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- muls r0, r5
- adds r0, r7
- movs r1, 0x50
- bl GetMonData
- cmp r0, 0
- bne _0804E590
- movs r0, 0x2
- b _0804E598
- .align 2, 0
-_0804E588: .4byte gUnknown_2031DA8
-_0804E58C: .4byte gEnemyParty
-_0804E590:
- cmp r4, 0
- beq _0804E596
- movs r4, 0x1
-_0804E596:
- adds r0, r4, 0
-_0804E598:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_804E50C
-
- thumb_func_start sub_804E5A0
-sub_804E5A0: @ 804E5A0
- push {r4,r5,lr}
- sub sp, 0xC
- movs r2, 0
- ldr r0, _0804E5F4 @ =gUnknown_2031DA8
- ldr r1, [r0]
- adds r3, r1, 0
- adds r3, 0x36
- adds r5, r0, 0
- ldrb r0, [r3]
- cmp r2, r0
- bge _0804E5CC
- adds r4, r1, 0
- adds r4, 0x45
-_0804E5BA:
- mov r1, sp
- adds r0, r1, r2
- adds r1, r4, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- ldrb r0, [r3]
- cmp r2, r0
- blt _0804E5BA
-_0804E5CC:
- adds r4, r5, 0
- ldr r0, [r4]
- adds r1, r0, 0
- adds r1, 0x36
- ldrb r1, [r1]
- adds r0, 0x35
- ldrb r2, [r0]
- mov r0, sp
- bl sub_804E50C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0804E61C
- cmp r0, 0x1
- bgt _0804E5F8
- cmp r0, 0
- beq _0804E5FE
- b _0804E668
- .align 2, 0
-_0804E5F4: .4byte gUnknown_2031DA8
-_0804E5F8:
- cmp r0, 0x2
- beq _0804E650
- b _0804E668
-_0804E5FE:
- movs r0, 0x3
- movs r1, 0x3
- bl sub_804F488
- ldr r0, [r4]
- adds r0, 0x80
- ldr r1, _0804E618 @ =0x0000bbcc
- strh r1, [r0]
- movs r0, 0xB4
- movs r1, 0
- bl sub_804F488
- b _0804E668
- .align 2, 0
-_0804E618: .4byte 0x0000bbcc
-_0804E61C:
- movs r0, 0x3
- movs r1, 0x1
- bl sub_804F488
- ldr r0, [r4]
- adds r0, 0x80
- ldr r1, _0804E64C @ =0x0000bbbb
- strh r1, [r0]
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _0804E668
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, [r4]
- adds r1, 0x80
- movs r2, 0x14
- bl SendBlock
- b _0804E668
- .align 2, 0
-_0804E64C: .4byte 0x0000bbbb
-_0804E650:
- movs r0, 0x3
- movs r1, 0x8
- bl sub_804F488
- ldr r0, [r5]
- adds r0, 0x80
- ldr r1, _0804E670 @ =0x0000bbcc
- strh r1, [r0]
- movs r0, 0xB4
- movs r1, 0
- bl sub_804F488
-_0804E668:
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0804E670: .4byte 0x0000bbcc
- thumb_func_end sub_804E5A0
-
- thumb_func_start sub_804E674
-sub_804E674: @ 804E674
- push {r4,lr}
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _0804E696
- cmp r1, 0
- bgt _0804E690
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0804E6B0
- b _0804E6EE
-_0804E690:
- cmp r1, 0x1
- beq _0804E6B0
- b _0804E6EE
-_0804E696:
- bl sub_804E5A0
- ldr r0, _0804E6AC @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x6F
- movs r1, 0x64
- strb r1, [r0]
- movs r0, 0x11
- bl PutWindowTilemap
- b _0804E6EE
- .align 2, 0
-_0804E6AC: .4byte gUnknown_2031DA8
-_0804E6B0:
- movs r0, 0x3
- movs r1, 0x1
- bl sub_804F488
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _0804E6DE
- ldr r4, _0804E6F4 @ =gUnknown_2031DA8
- ldr r0, [r4]
- adds r0, 0x80
- ldr r1, _0804E6F8 @ =0x0000bbcc
- strh r1, [r0]
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, [r4]
- adds r1, 0x80
- movs r2, 0x14
- bl SendBlock
-_0804E6DE:
- ldr r0, _0804E6F4 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x6F
- movs r1, 0x64
- strb r1, [r0]
- movs r0, 0x11
- bl PutWindowTilemap
-_0804E6EE:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0804E6F4: .4byte gUnknown_2031DA8
-_0804E6F8: .4byte 0x0000bbcc
- thumb_func_end sub_804E674
-
- thumb_func_start sub_804E6FC
-sub_804E6FC: @ 804E6FC
- push {r4-r6,lr}
- movs r5, 0
- ldr r0, _0804E740 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x37
- ldrb r0, [r0]
- subs r0, 0x4
- cmp r5, r0
- bge _0804E738
- movs r6, 0xC0
- lsls r6, 20
-_0804E712:
- lsrs r4, r6, 24
- adds r0, r4, 0
- bl PutWindowTilemap
- adds r0, r4, 0
- movs r1, 0x1
- bl CopyWindowToVram
- movs r0, 0x80
- lsls r0, 17
- adds r6, r0
- adds r5, 0x1
- ldr r0, _0804E740 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x37
- ldrb r0, [r0]
- subs r0, 0x4
- cmp r5, r0
- blt _0804E712
-_0804E738:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0804E740: .4byte gUnknown_2031DA8
- thumb_func_end sub_804E6FC
-
- thumb_func_start sub_804E744
-sub_804E744: @ 804E744
- push {r4,r5,lr}
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r5, r0, 24
- cmp r5, 0
- beq _0804E766
- cmp r5, 0
- bgt _0804E760
- movs r0, 0x1
- negs r0, r0
- cmp r5, r0
- beq _0804E7B8
- b _0804E7C2
-_0804E760:
- cmp r5, 0x1
- beq _0804E7B8
- b _0804E7C2
-_0804E766:
- movs r0, 0x4
- bl sub_804F5BC
- ldr r4, _0804E7AC @ =gUnknown_2031DA8
- ldr r0, [r4]
- adds r2, r0, 0
- adds r2, 0x80
- ldr r1, _0804E7B0 @ =0x0000eeaa
- strh r1, [r2]
- adds r0, 0x82
- strh r5, [r0]
- movs r0, 0x5
- movs r1, 0
- bl sub_804F488
- ldr r2, _0804E7B4 @ =gSprites
- ldr r0, [r4]
- adds r0, 0x34
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0x6F
- movs r1, 0x64
- strb r1, [r0]
- bl sub_804E6FC
- b _0804E7C2
- .align 2, 0
-_0804E7AC: .4byte gUnknown_2031DA8
-_0804E7B0: .4byte 0x0000eeaa
-_0804E7B4: .4byte gSprites
-_0804E7B8:
- movs r0, 0x5
- bl PlaySE
- bl sub_804E330
-_0804E7C2:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_804E744
-
- thumb_func_start sub_804E7C8
-sub_804E7C8: @ 804E7C8
- push {r4,lr}
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _0804E7F0
- movs r0, 0
- bl rbox_fill_rectangle
- ldr r4, _0804E800 @ =gUnknown_2031DA8
- ldr r0, [r4]
- adds r0, 0x35
- ldrb r0, [r0]
- bl sub_804EAAC
- ldr r0, [r4]
- adds r0, 0x7E
- ldrb r0, [r0]
- bl sub_804EAAC
-_0804E7F0:
- ldr r0, _0804E800 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x6F
- movs r1, 0x7
- strb r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0804E800: .4byte gUnknown_2031DA8
- thumb_func_end sub_804E7C8
-
- thumb_func_start sub_804E804
-sub_804E804: @ 804E804
- push {r4,lr}
- ldr r4, _0804E828 @ =gUnknown_2031DA8
- ldr r0, [r4]
- adds r0, 0x74
- ldrh r1, [r0]
- ldr r0, _0804E82C @ =0x00000505
- cmp r1, r0
- bne _0804E820
- bl sub_804DBAC
- ldr r0, [r4]
- adds r0, 0x6F
- movs r1, 0xE
- strb r1, [r0]
-_0804E820:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0804E828: .4byte gUnknown_2031DA8
-_0804E82C: .4byte 0x00000505
- thumb_func_end sub_804E804
-
- thumb_func_start sub_804E830
-sub_804E830: @ 804E830
- push {r4,r5,lr}
- sub sp, 0xC
- ldr r4, _0804E878 @ =gUnknown_2031DA8
- ldr r1, [r4]
- adds r1, 0xA8
- ldrb r0, [r1]
- adds r0, 0x1
- movs r5, 0
- strb r0, [r1]
- ldr r0, [r4]
- adds r0, 0xA8
- ldrb r0, [r0]
- cmp r0, 0x78
- bls _0804E870
- ldr r0, _0804E87C @ =gUnknown_8261FC4
- movs r1, 0x1
- str r1, [sp]
- movs r1, 0xE
- str r1, [sp, 0x4]
- str r5, [sp, 0x8]
- movs r1, 0x3
- movs r2, 0
- movs r3, 0x2
- bl CreateYesNoMenu
- ldr r0, [r4]
- adds r0, 0xA8
- strb r5, [r0]
- ldr r0, [r4]
- adds r0, 0x6F
- movs r1, 0x3
- strb r1, [r0]
-_0804E870:
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0804E878: .4byte gUnknown_2031DA8
-_0804E87C: .4byte gUnknown_8261FC4
- thumb_func_end sub_804E830
-
- thumb_func_start sub_804E880
-sub_804E880: @ 804E880
- push {r4-r6,lr}
- ldr r0, _0804E8FC @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0804E8F4
- movs r0, 0x5
- bl PlaySE
- movs r0, 0
- bl rbox_fill_rectangle
- movs r0, 0x1
- bl rbox_fill_rectangle
- movs r6, 0
- movs r5, 0xE0
- lsls r5, 20
-_0804E8A6:
- lsrs r4, r5, 24
- adds r0, r4, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- adds r0, r4, 0
- bl rbox_fill_rectangle
- movs r0, 0x80
- lsls r0, 17
- adds r5, r0
- adds r6, 0x1
- cmp r6, 0x3
- ble _0804E8A6
- movs r0, 0
- bl sub_804F3C8
- movs r0, 0x1
- bl sub_804F3C8
- ldr r2, _0804E900 @ =gUnknown_2031DA8
- ldr r0, [r2]
- adds r0, 0x6F
- movs r1, 0
- strb r1, [r0]
- ldr r3, _0804E904 @ =gSprites
- ldr r0, [r2]
- adds r0, 0x34
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
-_0804E8F4:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0804E8FC: .4byte gMain
-_0804E900: .4byte gUnknown_2031DA8
-_0804E904: .4byte gSprites
- thumb_func_end sub_804E880
-
- thumb_func_start sub_804E908
-sub_804E908: @ 804E908
- push {lr}
- ldr r0, _0804E924 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0804E93C
- ldr r0, _0804E928 @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804E92C
- bl sub_800AB9C
- b _0804E932
- .align 2, 0
-_0804E924: .4byte gPaletteFade
-_0804E928: .4byte gWirelessCommType
-_0804E92C:
- movs r0, 0xC
- bl sub_800AA80
-_0804E932:
- ldr r0, _0804E940 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x6F
- movs r1, 0xC
- strb r1, [r0]
-_0804E93C:
- pop {r0}
- bx r0
- .align 2, 0
-_0804E940: .4byte gUnknown_2031DA8
- thumb_func_end sub_804E908
-
- thumb_func_start sub_804E944
-sub_804E944: @ 804E944
- push {lr}
- ldr r0, _0804E978 @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804E988
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _0804E9AA
- ldr r0, _0804E97C @ =gUnknown_2031C90
- ldr r0, [r0]
- bl Free
- ldr r0, _0804E980 @ =gUnknown_2031DA8
- ldr r0, [r0]
- bl Free
- bl FreeAllWindowBuffers
- bl DestroyWirelessStatusIndicatorSprite
- ldr r0, _0804E984 @ =c2_8056854
- bl SetMainCallback2
- b _0804E9AA
- .align 2, 0
-_0804E978: .4byte gWirelessCommType
-_0804E97C: .4byte gUnknown_2031C90
-_0804E980: .4byte gUnknown_2031DA8
-_0804E984: .4byte c2_8056854
-_0804E988:
- ldr r0, _0804E9B0 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _0804E9AA
- ldr r0, _0804E9B4 @ =gUnknown_2031C90
- ldr r0, [r0]
- bl Free
- ldr r0, _0804E9B8 @ =gUnknown_2031DA8
- ldr r0, [r0]
- bl Free
- bl FreeAllWindowBuffers
- ldr r0, _0804E9BC @ =c2_8056854
- bl SetMainCallback2
-_0804E9AA:
- pop {r0}
- bx r0
- .align 2, 0
-_0804E9B0: .4byte gReceivedRemoteLinkPlayers
-_0804E9B4: .4byte gUnknown_2031C90
-_0804E9B8: .4byte gUnknown_2031DA8
-_0804E9BC: .4byte c2_8056854
- thumb_func_end sub_804E944
-
- thumb_func_start sub_804E9C0
-sub_804E9C0: @ 804E9C0
- push {lr}
- movs r0, 0
- bl sub_80FA484
- lsls r0, 24
- cmp r0, 0
- bne _0804E9DC
- bl sub_800AB9C
- ldr r0, _0804E9E0 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x6F
- movs r1, 0xD
- strb r1, [r0]
-_0804E9DC:
- pop {r0}
- bx r0
- .align 2, 0
-_0804E9E0: .4byte gUnknown_2031DA8
- thumb_func_end sub_804E9C0
-
- thumb_func_start sub_804E9E4
-sub_804E9E4: @ 804E9E4
- push {lr}
- ldr r0, _0804E9FC @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x6F
- ldrb r0, [r0]
- cmp r0, 0x10
- bhi _0804EAA6
- lsls r0, 2
- ldr r1, _0804EA00 @ =_0804EA04
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0804E9FC: .4byte gUnknown_2031DA8
-_0804EA00: .4byte _0804EA04
- .align 2, 0
-_0804EA04:
- .4byte _0804EA48
- .4byte _0804EA4E
- .4byte _0804EA54
- .4byte _0804EA5A
- .4byte _0804EA60
- .4byte _0804EAA6
- .4byte _0804EA66
- .4byte _0804EA6C
- .4byte _0804EA72
- .4byte _0804EA78
- .4byte _0804EA7E
- .4byte _0804EA84
- .4byte _0804EA8A
- .4byte _0804EA90
- .4byte _0804EA96
- .4byte _0804EA9C
- .4byte _0804EAA2
-_0804EA48:
- bl sub_804E194
- b _0804EAA6
-_0804EA4E:
- bl sub_804E388
- b _0804EAA6
-_0804EA54:
- bl sub_804E494
- b _0804EAA6
-_0804EA5A:
- bl sub_804E674
- b _0804EAA6
-_0804EA60:
- bl sub_804E744
- b _0804EAA6
-_0804EA66:
- bl sub_804E7C8
- b _0804EAA6
-_0804EA6C:
- bl sub_804E804
- b _0804EAA6
-_0804EA72:
- bl sub_804E880
- b _0804EAA6
-_0804EA78:
- bl sub_804D50C
- b _0804EAA6
-_0804EA7E:
- bl sub_804D548
- b _0804EAA6
-_0804EA84:
- bl sub_804E908
- b _0804EAA6
-_0804EA8A:
- bl sub_804E944
- b _0804EAA6
-_0804EA90:
- bl sub_804D5A4
- b _0804EAA6
-_0804EA96:
- bl sub_804E830
- b _0804EAA6
-_0804EA9C:
- bl sub_804E46C
- b _0804EAA6
-_0804EAA2:
- bl sub_804E9C0
-_0804EAA6:
- pop {r0}
- bx r0
- thumb_func_end sub_804E9E4
-
- thumb_func_start sub_804EAAC
-sub_804EAAC: @ 804EAAC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- movs r1, 0x6
- bl __udivsi3
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r3, _0804EAE0 @ =gUnknown_2031DA8
- ldr r0, [r3]
- adds r0, 0x74
- adds r1, r0, r2
- ldrb r0, [r1]
- cmp r0, 0
- bne _0804EAD8
- movs r0, 0x1
- strb r0, [r1]
- ldr r0, [r3]
- adds r0, 0x76
- adds r0, r2
- strb r4, [r0]
-_0804EAD8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0804EAE0: .4byte gUnknown_2031DA8
- thumb_func_end sub_804EAAC
-
- thumb_func_start sub_804EAE4
-sub_804EAE4: @ 804EAE4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x68
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _0804EB34 @ =gUnknown_2031DA8
- ldr r4, [r0]
- adds r0, r4, 0
- adds r0, 0x76
- adds r0, r7
- ldrb r0, [r0]
- movs r1, 0x1
- str r1, [sp, 0x60]
- cmp r0, 0x5
- bhi _0804EB0C
- movs r2, 0
- str r2, [sp, 0x60]
-_0804EB0C:
- movs r1, 0x6
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- movs r0, 0
- mov r8, r0
- adds r0, r4, 0
- adds r0, 0x74
- adds r3, r0, r7
- ldrb r0, [r3]
- cmp r0, 0x2
- bne _0804EB2A
- b _0804ECB4
-_0804EB2A:
- cmp r0, 0x2
- bgt _0804EB38
- cmp r0, 0x1
- beq _0804EB46
- b _0804EE54
- .align 2, 0
-_0804EB34: .4byte gUnknown_2031DA8
-_0804EB38:
- cmp r0, 0x3
- bne _0804EB3E
- b _0804ECEC
-_0804EB3E:
- cmp r0, 0x4
- bne _0804EB44
- b _0804EE1C
-_0804EB44:
- b _0804EE54
-_0804EB46:
- movs r5, 0
- adds r0, r4, 0
- adds r0, 0x36
- adds r0, r7
- ldr r1, [sp, 0x60]
- lsls r1, 1
- mov r9, r1
- lsls r6, r7, 1
- lsls r2, r7, 4
- str r2, [sp, 0x64]
- ldrb r0, [r0]
- cmp r8, r0
- bcs _0804EB9A
- ldr r0, _0804ECA0 @ =gSprites
- mov r8, r0
- ldr r4, _0804ECA4 @ =gUnknown_2031DA8
- ldr r0, [sp, 0x60]
- add r0, r9
- lsls r2, r0, 1
- movs r3, 0x4
-_0804EB6E:
- ldr r0, [r4]
- adds r1, r5, r2
- adds r0, 0x28
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r8
- adds r0, 0x3E
- ldrb r1, [r0]
- orrs r1, r3
- strb r1, [r0]
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, [r4]
- adds r0, 0x36
- adds r0, r7
- ldrb r0, [r0]
- cmp r5, r0
- bcc _0804EB6E
-_0804EB9A:
- movs r5, 0
- adds r0, r6, r7
- lsls r0, 1
- adds r4, r0, 0x2
-_0804EBA2:
- lsls r0, r5, 24
- asrs r0, 24
- adds r0, r4
- lsls r0, 24
- lsrs r0, 24
- bl ClearWindowTilemap
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x5
- bls _0804EBA2
- ldr r1, _0804ECA0 @ =gSprites
- mov r8, r1
- ldr r2, _0804ECA4 @ =gUnknown_2031DA8
- ldr r0, [r2]
- ldr r6, [sp, 0x60]
- add r6, r9
- lsls r3, r6, 1
- add r10, r3
- adds r0, 0x28
- add r0, r10
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r8
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- ldr r0, _0804ECA4 @ =gUnknown_2031DA8
- ldr r4, [r0]
- adds r4, 0x28
- add r4, r10
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r8
- movs r1, 0x14
- strh r1, [r0, 0x2E]
- ldrb r0, [r4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- add r2, r8
- ldr r5, _0804ECA8 @ =gTradeMonSpriteCoords
- lsls r6, 2
- adds r0, r6, r5
- ldrb r0, [r0]
- adds r3, 0x1
- lsls r3, 1
- adds r3, r5
- ldrb r1, [r3]
- adds r0, r1
- asrs r0, 1
- lsls r0, 3
- adds r0, 0xE
- strh r0, [r2, 0x32]
- ldrb r0, [r4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- add r1, r8
- adds r5, 0x1
- adds r6, r5
- ldrb r0, [r6]
- lsls r0, 3
- subs r0, 0xC
- strh r0, [r1, 0x36]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r8
- ldr r1, _0804ECAC @ =SpriteCB_MonIcon
- bl StoreSpriteCallbackInData6
- ldr r2, _0804ECA4 @ =gUnknown_2031DA8
- ldr r1, [r2]
- adds r1, 0x74
- adds r1, r7
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r0, [r2]
- adds r0, 0x28
- add r0, r10
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r8
- bl sub_8075490
- ldr r1, _0804ECB0 @ =gUnknown_8260A32
- ldr r0, [sp, 0x64]
- subs r2, r0, r7
- lsls r2, 24
- lsrs r2, 24
- movs r0, 0xF
- str r0, [sp]
- movs r0, 0x11
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r0, 0x1
- movs r3, 0
- bl CopyToBgTilemapBufferRect_ChangePalette
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- ldr r1, [sp, 0x60]
- cmp r1, 0
- beq _0804EC98
- b _0804EE54
-_0804EC98:
- bl sub_804F3B4
- b _0804EE54
- .align 2, 0
-_0804ECA0: .4byte gSprites
-_0804ECA4: .4byte gUnknown_2031DA8
-_0804ECA8: .4byte gTradeMonSpriteCoords
-_0804ECAC: .4byte SpriteCB_MonIcon
-_0804ECB0: .4byte gUnknown_8260A32
-_0804ECB4:
- ldr r2, _0804ECE4 @ =gSprites
- ldr r1, [sp, 0x60]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 1
- add r0, r10
- adds r1, r4, 0
- adds r1, 0x28
- adds r1, r0
- ldrb r1, [r1]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, [r0]
- ldr r0, _0804ECE8 @ =SpriteCB_MonIcon
- cmp r1, r0
- beq _0804ECDC
- b _0804EE54
-_0804ECDC:
- movs r0, 0x3
- strb r0, [r3]
- b _0804EE54
- .align 2, 0
-_0804ECE4: .4byte gSprites
-_0804ECE8: .4byte SpriteCB_MonIcon
-_0804ECEC:
- ldr r1, _0804EE08 @ =gUnknown_8260834
- ldr r0, [sp, 0x60]
- lsls r2, r0, 4
- subs r2, r0
- lsls r2, 24
- lsrs r2, 24
- movs r0, 0xF
- str r0, [sp]
- movs r0, 0x11
- str r0, [sp, 0x4]
- mov r0, r8
- str r0, [sp, 0x8]
- movs r0, 0x1
- movs r3, 0
- bl CopyToBgTilemapBufferRect_ChangePalette
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- ldr r6, _0804EE0C @ =gSprites
- ldr r1, _0804EE10 @ =gUnknown_2031DA8
- ldr r4, [r1]
- ldr r2, [sp, 0x60]
- lsls r3, r2, 1
- adds r3, r2
- lsls r1, r3, 1
- mov r2, r10
- adds r0, r2, r1
- adds r4, 0x28
- adds r4, r0
- ldrb r0, [r4]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r6
- ldr r5, _0804EE14 @ =gTradeMonSpriteCoords
- lsls r3, 2
- adds r0, r3, r5
- ldrb r0, [r0]
- adds r1, 0x1
- lsls r1, 1
- adds r1, r5
- ldrb r1, [r1]
- adds r0, r1
- asrs r0, 1
- lsls r0, 3
- adds r0, 0xE
- strh r0, [r2, 0x20]
- ldrb r0, [r4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- adds r5, 0x1
- adds r3, r5
- ldrb r0, [r3]
- lsls r0, 3
- subs r0, 0xC
- strh r0, [r1, 0x22]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- mov r1, r8
- strh r1, [r0, 0x24]
- ldrb r1, [r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- mov r2, r8
- strh r2, [r0, 0x26]
- add r0, sp, 0x14
- ldr r1, [sp, 0x60]
- mov r2, r10
- bl sub_804EE6C
- lsls r4, r7, 1
- adds r5, r4, 0
- adds r5, 0xE
- lsls r5, 24
- lsrs r5, 24
- lsls r0, 24
- asrs r0, 24
- movs r2, 0x50
- subs r2, r0
- lsrs r0, r2, 31
- adds r2, r0
- asrs r2, 1
- lsls r2, 24
- lsrs r2, 24
- ldr r0, _0804EE18 @ =gUnknown_8261F18
- mov r8, r0
- str r0, [sp]
- movs r1, 0
- str r1, [sp, 0x4]
- add r0, sp, 0x14
- str r0, [sp, 0x8]
- adds r0, r5, 0
- movs r3, 0x4
- bl AddTextPrinterParameterized3
- add r6, sp, 0x28
- adds r0, r6, 0
- ldr r1, [sp, 0x60]
- mov r2, r10
- bl sub_804EED4
- adds r4, 0xF
- lsls r4, 24
- lsrs r4, 24
- movs r1, 0
- str r1, [sp]
- str r1, [sp, 0x4]
- mov r2, r8
- str r2, [sp, 0x8]
- str r1, [sp, 0xC]
- str r6, [sp, 0x10]
- adds r0, r4, 0
- movs r1, 0x1
- movs r2, 0
- movs r3, 0
- bl AddTextPrinterParameterized4
- adds r0, r5, 0
- bl PutWindowTilemap
- adds r0, r5, 0
- movs r1, 0x3
- bl CopyWindowToVram
- adds r0, r4, 0
- bl PutWindowTilemap
- adds r0, r4, 0
- movs r1, 0x3
- bl CopyWindowToVram
- ldr r0, _0804EE10 @ =gUnknown_2031DA8
- ldr r1, [r0]
- b _0804EE4A
- .align 2, 0
-_0804EE08: .4byte gUnknown_8260834
-_0804EE0C: .4byte gSprites
-_0804EE10: .4byte gUnknown_2031DA8
-_0804EE14: .4byte gTradeMonSpriteCoords
-_0804EE18: .4byte gUnknown_8261F18
-_0804EE1C:
- ldr r0, _0804EE64 @ =gUnknown_8262055
- lsls r1, r7, 1
- adds r4, r1, r0
- ldrb r2, [r4]
- adds r2, 0x4
- lsls r2, 24
- lsrs r2, 24
- adds r0, 0x1
- adds r1, r0
- ldrb r3, [r1]
- adds r3, 0x1
- lsls r3, 24
- lsrs r3, 24
- ldrb r0, [r4]
- str r0, [sp]
- ldrb r0, [r1]
- str r0, [sp, 0x4]
- adds r0, r7, 0
- mov r1, r10
- bl sub_804F08C
- ldr r2, _0804EE68 @ =gUnknown_2031DA8
- ldr r1, [r2]
-_0804EE4A:
- adds r1, 0x74
- adds r1, r7
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_0804EE54:
- add sp, 0x68
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0804EE64: .4byte gUnknown_8262055
-_0804EE68: .4byte gUnknown_2031DA8
- thumb_func_end sub_804EAE4
-
- thumb_func_start sub_804EE6C
-sub_804EE6C: @ 804EE6C
- push {r4,lr}
- sub sp, 0xC
- adds r4, r0, 0
- lsls r1, 24
- lsls r2, 24
- lsrs r2, 24
- cmp r1, 0
- bne _0804EE94
- movs r0, 0x64
- muls r0, r2
- ldr r1, _0804EE90 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- b _0804EEA4
- .align 2, 0
-_0804EE90: .4byte gPlayerParty
-_0804EE94:
- movs r0, 0x64
- muls r0, r2
- ldr r1, _0804EED0 @ =gEnemyParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
-_0804EEA4:
- adds r0, r4, 0
- mov r1, sp
- bl StringCopy10
- movs r0, 0
- movs r1, 0x2
- bl GetFontAttribute
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- movs r0, 0
- adds r1, r4, 0
- bl GetStringWidth
- lsls r0, 24
- lsrs r0, 24
- add sp, 0xC
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0804EED0: .4byte gEnemyParty
- thumb_func_end sub_804EE6C
-
- thumb_func_start sub_804EED4
-sub_804EED4: @ 804EED4
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x8
- adds r6, r0, 0
- lsls r1, 24
- lsrs r7, r1, 24
- lsls r2, 24
- lsrs r2, 24
- ldr r0, _0804EF1C @ =gUnknown_2031DA8
- ldr r1, [r0]
- lsls r0, r7, 1
- adds r0, r7
- lsls r0, 1
- adds r0, r2, r0
- adds r1, 0x51
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0
- bne _0804EF8C
- movs r4, 0
- movs r0, 0x64
- adds r5, r2, 0
- muls r5, r0
- ldr r0, _0804EF20 @ =gPlayerParty
- mov r9, r0
- ldr r2, _0804EF24 @ =gEnemyParty
- mov r8, r2
-_0804EF0E:
- cmp r7, 0
- bne _0804EF28
- adds r1, r4, 0
- adds r1, 0xD
- mov r2, r9
- b _0804EF2E
- .align 2, 0
-_0804EF1C: .4byte gUnknown_2031DA8
-_0804EF20: .4byte gPlayerParty
-_0804EF24: .4byte gEnemyParty
-_0804EF28:
- adds r1, r4, 0
- adds r1, 0xD
- mov r2, r8
-_0804EF2E:
- adds r0, r5, r2
- movs r2, 0
- bl GetMonData
- lsls r1, r4, 1
- add r1, sp
- strh r0, [r1]
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x3
- bls _0804EF0E
- ldr r1, _0804EF80 @ =gUnknown_8261EB6
- adds r0, r6, 0
- bl StringCopy
- movs r4, 0
-_0804EF50:
- lsls r0, r4, 1
- mov r2, sp
- adds r1, r2, r0
- ldrh r0, [r1]
- cmp r0, 0
- beq _0804EF6C
- adds r1, r0, 0
- movs r0, 0xD
- muls r1, r0
- ldr r0, _0804EF84 @ =gMoveNames
- adds r1, r0
- adds r0, r6, 0
- bl StringAppend
-_0804EF6C:
- adds r0, r6, 0
- ldr r1, _0804EF88 @ =gUnknown_8261EC7
- bl StringAppend
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x3
- bls _0804EF50
- b _0804EF9C
- .align 2, 0
-_0804EF80: .4byte gUnknown_8261EB6
-_0804EF84: .4byte gMoveNames
-_0804EF88: .4byte gUnknown_8261EC7
-_0804EF8C:
- ldr r1, _0804EFAC @ =gUnknown_8261EB6
- adds r0, r6, 0
- bl StringCopy
- ldr r1, _0804EFB0 @ =gUnknown_841E09F
- adds r0, r6, 0
- bl StringAppend
-_0804EF9C:
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0804EFAC: .4byte gUnknown_8261EB6
-_0804EFB0: .4byte gUnknown_841E09F
- thumb_func_end sub_804EED4
-
- thumb_func_start sub_804EFB4
-sub_804EFB4: @ 804EFB4
- push {r4-r6,lr}
- sub sp, 0xC
- adds r4, r1, 0
- adds r6, r2, 0
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 1
- adds r1, 0x2
- lsls r4, 24
- asrs r4, 24
- adds r4, r1
- lsls r4, 24
- lsrs r4, 24
- movs r5, 0
- movs r0, 0
- movs r1, 0x2
- bl GetFontAttribute
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- movs r0, 0
- adds r1, r6, 0
- bl GetStringWidth
- movs r2, 0x40
- subs r2, r0
- lsrs r2, 1
- lsls r2, 24
- lsrs r2, 24
- ldr r0, _0804F01C @ =gUnknown_8261F18
- str r0, [sp]
- str r5, [sp, 0x4]
- str r6, [sp, 0x8]
- adds r0, r4, 0
- movs r1, 0
- movs r3, 0x4
- bl AddTextPrinterParameterized3
- adds r0, r4, 0
- bl PutWindowTilemap
- adds r0, r4, 0
- movs r1, 0x3
- bl CopyWindowToVram
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0804F01C: .4byte gUnknown_8261F18
- thumb_func_end sub_804EFB4
-
- thumb_func_start sub_804F020
-sub_804F020: @ 804F020
- push {r4-r7,lr}
- sub sp, 0x34
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r7, _0804F080 @ =gEnemyParty
- cmp r6, 0
- bne _0804F030
- ldr r7, _0804F084 @ =gPlayerParty
-_0804F030:
- movs r4, 0
- ldr r0, _0804F088 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x36
- adds r0, r6
- ldrb r0, [r0]
- cmp r4, r0
- bcs _0804F076
- add r5, sp, 0x14
-_0804F042:
- movs r0, 0x64
- muls r0, r4
- adds r0, r7, r0
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- adds r0, r5, 0
- mov r1, sp
- bl StringCopy10
- adds r0, r6, 0
- adds r1, r4, 0
- adds r2, r5, 0
- bl sub_804EFB4
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0804F088 @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x36
- adds r0, r6
- ldrb r0, [r0]
- cmp r4, r0
- bcc _0804F042
-_0804F076:
- add sp, 0x34
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0804F080: .4byte gEnemyParty
-_0804F084: .4byte gPlayerParty
-_0804F088: .4byte gUnknown_2031DA8
- thumb_func_end sub_804F020
-
- thumb_func_start sub_804F08C
-sub_804F08C: @ 804F08C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x1C
- ldr r4, [sp, 0x3C]
- ldr r5, [sp, 0x40]
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 24
- lsrs r7, r1, 24
- lsls r2, 24
- lsrs r2, 24
- mov r9, r2
- lsls r3, 24
- lsrs r3, 24
- mov r10, r3
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- ldr r1, _0804F0E8 @ =gUnknown_8E9F1FC
- movs r0, 0x6
- str r0, [sp]
- movs r0, 0x3
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r0, 0x1
- adds r2, r4, 0
- adds r3, r5, 0
- bl CopyToBgTilemapBufferRect_ChangePalette
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- mov r0, r8
- cmp r0, 0
- bne _0804F0F0
- movs r0, 0x64
- muls r0, r7
- ldr r1, _0804F0EC @ =gPlayerParty
- b _0804F0F6
- .align 2, 0
-_0804F0E8: .4byte gUnknown_8E9F1FC
-_0804F0EC: .4byte gPlayerParty
-_0804F0F0:
- movs r0, 0x64
- muls r0, r7
- ldr r1, _0804F16C @ =gEnemyParty
-_0804F0F6:
- adds r0, r1
- movs r1, 0x38
- movs r2, 0
- bl GetMonData
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r4, _0804F170 @ =gUnknown_2031DA8
- ldr r5, [r4]
- mov r1, r8
- lsls r2, r1, 1
- adds r1, r2, r1
- lsls r1, 1
- adds r1, r7, r1
- adds r0, r5, 0
- adds r0, 0x51
- adds r0, r1
- ldrb r0, [r0]
- str r2, [sp, 0x18]
- cmp r0, 0
- bne _0804F174
- adds r0, r6, 0
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 24
- lsrs r2, r0, 24
- mov r0, r10
- lsls r3, r0, 5
- cmp r2, 0
- beq _0804F148
- mov r1, r9
- adds r0, r1, r3
- lsls r0, 1
- movs r1, 0x8F
- lsls r1, 4
- adds r5, r1
- adds r1, r5, r0
- adds r0, r2, 0
- adds r0, 0x60
- strh r0, [r1]
-_0804F148:
- ldr r4, [r4]
- mov r1, r9
- adds r0, r1, r3
- adds r0, 0x1
- lsls r0, 1
- movs r3, 0x8F
- lsls r3, 4
- adds r4, r3
- adds r4, r0
- adds r0, r6, 0
- movs r1, 0xA
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- adds r0, 0x70
- strh r0, [r4]
- b _0804F1B2
- .align 2, 0
-_0804F16C: .4byte gEnemyParty
-_0804F170: .4byte gUnknown_2031DA8
-_0804F174:
- mov r1, r10
- lsls r0, r1, 5
- mov r1, r9
- adds r3, r1, r0
- adds r1, r3, 0
- subs r1, 0x20
- lsls r1, 1
- movs r0, 0x8F
- lsls r0, 4
- adds r2, r5, r0
- adds r1, r2, r1
- adds r0, r3, 0
- subs r0, 0x21
- lsls r0, 1
- adds r0, r2, r0
- ldrh r0, [r0]
- strh r0, [r1]
- adds r1, r3, 0
- subs r1, 0x1F
- lsls r1, 1
- adds r1, r2, r1
- adds r0, r3, 0
- subs r0, 0x24
- lsls r0, 1
- adds r2, r0
- ldrh r2, [r2]
- movs r3, 0x80
- lsls r3, 3
- adds r0, r3, 0
- orrs r0, r2
- strh r0, [r1]
-_0804F1B2:
- ldr r0, _0804F1D0 @ =gUnknown_2031DA8
- ldr r1, [r0]
- ldr r0, [sp, 0x18]
- add r0, r8
- lsls r0, 1
- adds r0, r7, r0
- adds r1, 0x51
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0
- beq _0804F1D4
- movs r2, 0x90
- lsls r2, 3
- b _0804F256
- .align 2, 0
-_0804F1D0: .4byte gUnknown_2031DA8
-_0804F1D4:
- mov r0, r8
- cmp r0, 0
- bne _0804F200
- movs r0, 0x64
- adds r4, r7, 0
- muls r4, r0
- ldr r0, _0804F1FC @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- bl GetMonGender
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r4, 0
- movs r1, 0x2
- add r2, sp, 0xC
- bl GetMonData
- b _0804F21E
- .align 2, 0
-_0804F1FC: .4byte gPlayerParty
-_0804F200:
- movs r0, 0x64
- adds r4, r7, 0
- muls r4, r0
- ldr r0, _0804F22C @ =gEnemyParty
- adds r4, r0
- adds r0, r4, 0
- bl GetMonGender
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r4, 0
- movs r1, 0x2
- add r2, sp, 0xC
- bl GetMonData
-_0804F21E:
- cmp r5, 0
- beq _0804F230
- cmp r5, 0xFE
- beq _0804F244
- movs r2, 0x83
- b _0804F256
- .align 2, 0
-_0804F22C: .4byte gEnemyParty
-_0804F230:
- add r0, sp, 0xC
- movs r1, 0
- bl NameHasGenderSymbol
- lsls r0, 24
- movs r2, 0x83
- cmp r0, 0
- bne _0804F256
- movs r2, 0x84
- b _0804F256
-_0804F244:
- add r0, sp, 0xC
- movs r1, 0xFE
- bl NameHasGenderSymbol
- lsls r0, 24
- movs r2, 0x83
- cmp r0, 0
- bne _0804F256
- movs r2, 0x85
-_0804F256:
- ldr r0, _0804F280 @ =gUnknown_2031DA8
- ldr r1, [r0]
- mov r0, r10
- subs r0, 0x1
- lsls r0, 5
- add r0, r9
- adds r0, 0x1
- lsls r0, 1
- movs r3, 0x8F
- lsls r3, 4
- adds r1, r3
- adds r1, r0
- strh r2, [r1]
- add sp, 0x1C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0804F280: .4byte gUnknown_2031DA8
- thumb_func_end sub_804F08C
-
- thumb_func_start sub_804F284
-sub_804F284: @ 804F284
- push {r4-r7,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r6, r0, 24
- movs r7, 0
- ldr r0, _0804F2DC @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x36
- adds r0, r6
- ldrb r0, [r0]
- cmp r7, r0
- bge _0804F2D4
- lsls r0, r6, 1
- adds r0, r6
- ldr r1, _0804F2E0 @ =gUnknown_8261E5A
- lsls r0, 2
- adds r5, r0, r1
- ldr r1, _0804F2E4 @ =gUnknown_8261E72
- adds r4, r0, r1
-_0804F2AA:
- lsls r1, r7, 24
- lsrs r1, 24
- ldrb r2, [r5]
- ldrb r3, [r5, 0x1]
- ldrb r0, [r4]
- str r0, [sp]
- ldrb r0, [r4, 0x1]
- str r0, [sp, 0x4]
- adds r0, r6, 0
- bl sub_804F08C
- adds r5, 0x2
- adds r4, 0x2
- adds r7, 0x1
- ldr r0, _0804F2DC @ =gUnknown_2031DA8
- ldr r0, [r0]
- adds r0, 0x36
- adds r0, r6
- ldrb r0, [r0]
- cmp r7, r0
- blt _0804F2AA
-_0804F2D4:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0804F2DC: .4byte gUnknown_2031DA8
-_0804F2E0: .4byte gUnknown_8261E5A
-_0804F2E4: .4byte gUnknown_8261E72
- thumb_func_end sub_804F284
-
- thumb_func_start sub_804F2E8
-sub_804F2E8: @ 804F2E8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 24
- lsrs r0, 24
- mov r12, r0
- movs r7, 0
- ldr r3, _0804F3A8 @ =gUnknown_2031DA8
- ldr r0, [r3]
- adds r0, 0x36
- add r0, r12
- ldrb r0, [r0]
- cmp r7, r0
- bge _0804F39A
- ldr r6, _0804F3AC @ =gSprites
- mov r9, r3
- mov r1, r12
- lsls r0, r1, 1
- add r0, r12
- lsls r2, r0, 1
- mov r10, r2
- ldr r1, _0804F3B0 @ =gTradeMonSpriteCoords
- movs r2, 0
- mov r8, r2
- lsls r0, 2
- adds r5, r0, r1
-_0804F320:
- mov r1, r9
- ldr r0, [r1]
- mov r2, r10
- adds r4, r7, r2
- adds r0, 0x28
- adds r0, r4
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- adds r1, 0x3E
- ldrb r2, [r1]
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- mov r0, r9
- ldr r3, [r0]
- adds r2, r3, 0
- adds r2, 0x28
- adds r2, r4
- ldrb r0, [r2]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldrb r0, [r5]
- lsls r0, 3
- adds r0, 0xE
- strh r0, [r1, 0x20]
- ldrb r0, [r2]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldrb r0, [r5, 0x1]
- lsls r0, 3
- subs r0, 0xC
- strh r0, [r1, 0x22]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- mov r1, r8
- strh r1, [r0, 0x24]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r6
- mov r2, r8
- strh r2, [r0, 0x26]
- adds r5, 0x2
- adds r7, 0x1
- adds r3, 0x36
- add r3, r12
- ldrb r3, [r3]
- cmp r7, r3
- blt _0804F320
-_0804F39A:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0804F3A8: .4byte gUnknown_2031DA8
-_0804F3AC: .4byte gSprites
-_0804F3B0: .4byte gTradeMonSpriteCoords
- thumb_func_end sub_804F2E8
-
- thumb_func_start sub_804F3B4
-sub_804F3B4: @ 804F3B4
- push {lr}
- movs r0, 0x1
- bl rbox_fill_rectangle
- movs r0, 0x1
- bl sub_804F020
- pop {r0}
- bx r0
- thumb_func_end sub_804F3B4
-
- thumb_func_start sub_804F3C8
-sub_804F3C8: @ 804F3C8
- push {r4-r6,lr}
- sub sp, 0xC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r1, _0804F430 @ =gUnknown_8260A32
- lsls r2, r4, 4
- subs r2, r4
- lsls r2, 24
- lsrs r2, 24
- movs r0, 0xF
- str r0, [sp]
- movs r0, 0x11
- str r0, [sp, 0x4]
- movs r6, 0
- str r6, [sp, 0x8]
- movs r0, 0x1
- movs r3, 0
- bl CopyToBgTilemapBufferRect_ChangePalette
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- adds r0, r4, 0
- bl sub_804F284
- adds r0, r4, 0
- bl sub_804F020
- adds r0, r4, 0
- bl sub_804F2E8
- ldr r0, _0804F434 @ =gUnknown_8261ECC
- ldr r0, [r0, 0x4]
- ldr r5, _0804F438 @ =gUnknown_2031DA8
- ldr r1, [r5]
- adds r1, 0x72
- ldrh r1, [r1]
- lsls r1, 5
- ldr r2, _0804F43C @ =0x06010000
- adds r1, r2
- movs r2, 0x18
- bl sub_804F728
- ldr r0, [r5]
- adds r0, 0x74
- adds r0, r4
- strb r6, [r0]
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0804F430: .4byte gUnknown_8260A32
-_0804F434: .4byte gUnknown_8261ECC
-_0804F438: .4byte gUnknown_2031DA8
-_0804F43C: .4byte 0x06010000
- thumb_func_end sub_804F3C8
-
- thumb_func_start sub_804F440
-sub_804F440: @ 804F440
- push {lr}
- sub sp, 0x8
- movs r0, 0x1E
- str r0, [sp]
- movs r0, 0x14
- str r0, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect_Palette0
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- add sp, 0x8
- pop {r0}
- bx r0
- thumb_func_end sub_804F440
-
- thumb_func_start sub_804F464
-sub_804F464: @ 804F464
- push {lr}
- sub sp, 0x8
- movs r0, 0x1E
- str r0, [sp]
- movs r0, 0x14
- str r0, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect_Palette0
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- add sp, 0x8
- pop {r0}
- bx r0
- thumb_func_end sub_804F464
-
- thumb_func_start sub_804F488
-sub_804F488: @ 804F488
- push {r4-r7,lr}
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, 24
- lsrs r6, r1, 24
- movs r3, 0
- ldr r4, _0804F4C8 @ =gUnknown_2031DA8
- mov r12, r4
- movs r7, 0x8D
- lsls r7, 4
-_0804F49C:
- mov r1, r12
- ldr r0, [r1]
- lsls r1, r3, 3
- adds r2, r0, r1
- adds r0, r2, r7
- ldrb r0, [r0]
- cmp r0, 0
- bne _0804F4D0
- ldr r3, _0804F4CC @ =0x000008d2
- adds r0, r2, r3
- strh r5, [r0]
- adds r3, 0x2
- adds r0, r2, r3
- strb r6, [r0]
- ldr r0, [r4]
- adds r0, r1
- movs r1, 0x8D
- lsls r1, 4
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- b _0804F4D6
- .align 2, 0
-_0804F4C8: .4byte gUnknown_2031DA8
-_0804F4CC: .4byte 0x000008d2
-_0804F4D0:
- adds r3, 0x1
- cmp r3, 0x3
- ble _0804F49C
-_0804F4D6:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_804F488
-
- thumb_func_start sub_804F4DC
-sub_804F4DC: @ 804F4DC
- push {r4,r5,lr}
- movs r4, 0
- ldr r3, _0804F508 @ =gUnknown_2031DA8
-_0804F4E2:
- ldr r0, [r3]
- lsls r1, r4, 3
- adds r2, r0, r1
- movs r5, 0x8D
- lsls r5, 4
- adds r0, r2, r5
- ldrb r0, [r0]
- adds r5, r1, 0
- cmp r0, 0
- beq _0804F5AC
- ldr r0, _0804F50C @ =0x000008d2
- adds r1, r2, r0
- ldrh r0, [r1]
- cmp r0, 0
- beq _0804F510
- subs r0, 0x1
- strh r0, [r1]
- b _0804F5AC
- .align 2, 0
-_0804F508: .4byte gUnknown_2031DA8
-_0804F50C: .4byte 0x000008d2
-_0804F510:
- ldr r1, _0804F524 @ =0x000008d4
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0x8
- bhi _0804F59A
- lsls r0, 2
- ldr r1, _0804F528 @ =_0804F52C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0804F524: .4byte 0x000008d4
-_0804F528: .4byte _0804F52C
- .align 2, 0
-_0804F52C:
- .4byte _0804F550
- .4byte _0804F56C
- .4byte _0804F574
- .4byte _0804F57C
- .4byte _0804F57C
- .4byte _0804F57C
- .4byte _0804F584
- .4byte _0804F58C
- .4byte _0804F594
-_0804F550:
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0804F568 @ =gUnknown_2031DA8
- ldr r1, [r1]
- adds r1, 0x80
- movs r2, 0x14
- bl SendBlock
- b _0804F59A
- .align 2, 0
-_0804F568: .4byte gUnknown_2031DA8
-_0804F56C:
- movs r0, 0
- bl sub_804F5BC
- b _0804F59A
-_0804F574:
- movs r0, 0x2
- bl sub_804F5BC
- b _0804F59A
-_0804F57C:
- movs r0, 0x3
- bl sub_804F5BC
- b _0804F59A
-_0804F584:
- movs r0, 0x6
- bl sub_804F5BC
- b _0804F59A
-_0804F58C:
- movs r0, 0x7
- bl sub_804F5BC
- b _0804F59A
-_0804F594:
- movs r0, 0x8
- bl sub_804F5BC
-_0804F59A:
- ldr r0, _0804F5B8 @ =gUnknown_2031DA8
- ldr r1, [r0]
- adds r1, r5
- movs r2, 0x8D
- lsls r2, 4
- adds r1, r2
- movs r2, 0
- strb r2, [r1]
- adds r3, r0, 0
-_0804F5AC:
- adds r4, 0x1
- cmp r4, 0x3
- ble _0804F4E2
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0804F5B8: .4byte gUnknown_2031DA8
- thumb_func_end sub_804F4DC
-
- thumb_func_start sub_804F5BC
-sub_804F5BC: @ 804F5BC
- push {r4,lr}
- sub sp, 0xC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r0, _0804F60C @ =gUnknown_8261EF4
- lsls r4, 2
- adds r4, r0
- ldr r2, [r4]
- movs r0, 0x2
- str r0, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r1, 0x3
- movs r3, 0
- bl AddTextPrinterParameterized
- movs r0, 0
- movs r1, 0x14
- movs r2, 0xC
- bl DrawTextBorderOuter
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- add sp, 0xC
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0804F60C: .4byte gUnknown_8261EF4
- thumb_func_end sub_804F5BC
-
- thumb_func_start sub_804F610
-sub_804F610: @ 804F610
- push {r4,lr}
- sub sp, 0x8
- ldr r0, _0804F660 @ =gUnknown_2031DA8
- ldr r1, [r0]
- adds r3, r1, 0
- adds r3, 0xA8
- ldrb r1, [r3]
- adds r4, r0, 0
- cmp r1, 0xD
- bhi _0804F64C
- ldr r1, _0804F664 @ =gUnknown_2031C94
- ldrb r0, [r3]
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- str r0, [sp]
- ldr r0, _0804F668 @ =0xffff0000
- ldr r2, [sp, 0x4]
- ands r2, r0
- movs r0, 0x80
- lsls r0, 1
- orrs r2, r0
- str r2, [sp, 0x4]
- ldrb r1, [r3]
- adds r1, 0xC8
- lsls r1, 16
- ldr r0, _0804F66C @ =0x0000ffff
- ands r0, r2
- orrs r0, r1
- str r0, [sp, 0x4]
-_0804F64C:
- ldr r0, [r4]
- adds r0, 0xA8
- ldrb r0, [r0]
- cmp r0, 0x11
- bhi _0804F71C
- lsls r0, 2
- ldr r1, _0804F670 @ =_0804F674
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0804F660: .4byte gUnknown_2031DA8
-_0804F664: .4byte gUnknown_2031C94
-_0804F668: .4byte 0xffff0000
-_0804F66C: .4byte 0x0000ffff
-_0804F670: .4byte _0804F674
- .align 2, 0
-_0804F674:
- .4byte _0804F6BC
- .4byte _0804F6BC
- .4byte _0804F6BC
- .4byte _0804F6BC
- .4byte _0804F6BC
- .4byte _0804F6BC
- .4byte _0804F6BC
- .4byte _0804F6BC
- .4byte _0804F6C0
- .4byte _0804F6D8
- .4byte _0804F6D8
- .4byte _0804F6D8
- .4byte _0804F6D8
- .4byte _0804F6D8
- .4byte _0804F6DC
- .4byte _0804F6E8
- .4byte _0804F6F4
- .4byte _0804F710
-_0804F6BC:
- mov r0, sp
- b _0804F6F6
-_0804F6C0:
- mov r0, sp
- bl LoadSpriteSheet
- ldr r1, _0804F6D4 @ =gUnknown_2031DA8
- ldr r1, [r1]
- adds r2, r1, 0
- adds r2, 0x72
- strh r0, [r2]
- b _0804F6FE
- .align 2, 0
-_0804F6D4: .4byte gUnknown_2031DA8
-_0804F6D8:
- mov r0, sp
- b _0804F6F6
-_0804F6DC:
- ldr r0, _0804F6E4 @ =gUnknown_8261D00
- bl LoadSpritePalette
- b _0804F6FA
- .align 2, 0
-_0804F6E4: .4byte gUnknown_8261D00
-_0804F6E8:
- ldr r0, _0804F6F0 @ =gUnknown_8261C60
- bl LoadSpritePalette
- b _0804F6FA
- .align 2, 0
-_0804F6F0: .4byte gUnknown_8261C60
-_0804F6F4:
- ldr r0, _0804F708 @ =gUnknown_8261C58
-_0804F6F6:
- bl LoadSpriteSheet
-_0804F6FA:
- ldr r0, _0804F70C @ =gUnknown_2031DA8
- ldr r1, [r0]
-_0804F6FE:
- adds r1, 0xA8
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _0804F71C
- .align 2, 0
-_0804F708: .4byte gUnknown_8261C58
-_0804F70C: .4byte gUnknown_2031DA8
-_0804F710:
- ldr r0, [r4]
- adds r0, 0xA8
- movs r1, 0
- strb r1, [r0]
- movs r0, 0x1
- b _0804F71E
-_0804F71C:
- movs r0, 0
-_0804F71E:
- add sp, 0x8
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_804F610
-
- thumb_func_start sub_804F728
-sub_804F728: @ 804F728
- push {lr}
- sub sp, 0x8
- ldr r2, _0804F744 @ =gDecompressionBuffer
- str r2, [sp]
- movs r2, 0x6
- str r2, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_808BEB4
- add sp, 0x8
- pop {r0}
- bx r0
- .align 2, 0
-_0804F744: .4byte gDecompressionBuffer
- thumb_func_end sub_804F728
-
- thumb_func_start sub_804F748
-sub_804F748: @ 804F748
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- cmp r0, 0
- beq _0804F760
- cmp r0, 0x1
- beq _0804F7F4
- b _0804F880
-_0804F760:
- movs r7, 0
- ldr r1, _0804F7A0 @ =gUnknown_2031DA8
- ldr r0, [r1]
- adds r0, 0x36
- ldrb r0, [r0]
- cmp r7, r0
- blt _0804F770
- b _0804F880
-_0804F770:
- adds r6, r1, 0
- movs r5, 0
- mov r9, r5
-_0804F776:
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, _0804F7A4 @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- adds r1, r0, 0
- cmp r1, 0x1
- bne _0804F7A8
- ldr r0, [r6]
- adds r0, 0x45
- adds r0, r5
- mov r2, r9
- strb r2, [r0]
- ldr r0, [r6]
- adds r0, 0x51
- adds r0, r5
- b _0804F7D8
- .align 2, 0
-_0804F7A0: .4byte gUnknown_2031DA8
-_0804F7A4: .4byte gPlayerParty
-_0804F7A8:
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- adds r1, r0, 0
- cmp r1, 0
- bne _0804F7C6
- ldr r0, [r6]
- adds r0, 0x45
- adds r0, r5
- strb r1, [r0]
- ldr r0, [r6]
- adds r0, 0x51
- adds r0, r5
- b _0804F7D8
-_0804F7C6:
- ldr r0, [r6]
- adds r0, 0x45
- adds r0, r5
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, [r6]
- adds r0, 0x51
- adds r0, r5
- mov r1, r9
-_0804F7D8:
- strb r1, [r0]
- ldr r0, _0804F7F0 @ =gUnknown_2031DA8
- adds r5, 0x1
- adds r7, 0x1
- ldr r0, [r0]
- adds r0, 0x36
- add r0, r8
- ldrb r0, [r0]
- cmp r7, r0
- blt _0804F776
- b _0804F880
- .align 2, 0
-_0804F7F0: .4byte gUnknown_2031DA8
-_0804F7F4:
- movs r7, 0
- ldr r1, _0804F834 @ =gUnknown_2031DA8
- ldr r0, [r1]
- adds r0, 0x37
- ldrb r0, [r0]
- cmp r7, r0
- bge _0804F880
- adds r6, r1, 0
- movs r5, 0x6
- movs r2, 0
- mov r9, r2
-_0804F80A:
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, _0804F838 @ =gEnemyParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- adds r1, r0, 0
- cmp r1, 0x1
- bne _0804F83C
- ldr r0, [r6]
- adds r0, 0x45
- adds r0, r5
- mov r2, r9
- strb r2, [r0]
- ldr r0, [r6]
- adds r0, 0x51
- adds r0, r5
- b _0804F86C
- .align 2, 0
-_0804F834: .4byte gUnknown_2031DA8
-_0804F838: .4byte gEnemyParty
-_0804F83C:
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- adds r1, r0, 0
- cmp r1, 0
- bne _0804F85A
- ldr r0, [r6]
- adds r0, 0x45
- adds r0, r5
- strb r1, [r0]
- ldr r0, [r6]
- adds r0, 0x51
- adds r0, r5
- b _0804F86C
-_0804F85A:
- ldr r0, [r6]
- adds r0, 0x45
- adds r0, r5
- movs r1, 0x1
- strb r1, [r0]
- ldr r0, [r6]
- adds r0, 0x51
- adds r0, r5
- mov r1, r9
-_0804F86C:
- strb r1, [r0]
- ldr r0, _0804F88C @ =gUnknown_2031DA8
- adds r5, 0x1
- adds r7, 0x1
- ldr r0, [r0]
- adds r0, 0x36
- add r0, r8
- ldrb r0, [r0]
- cmp r7, r0
- blt _0804F80A
-_0804F880:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0804F88C: .4byte gUnknown_2031DA8
- thumb_func_end sub_804F748
-
- thumb_func_start sub_804F890
-sub_804F890: @ 804F890
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _0804F8A0
- cmp r0, 0x1
- beq _0804F900
- b _0804F954
-_0804F8A0:
- movs r6, 0
- ldr r1, _0804F8F8 @ =gUnknown_2031DA8
- ldr r0, [r1]
- adds r0, 0x36
- ldrb r0, [r0]
- cmp r6, r0
- bcs _0804F954
- adds r7, r1, 0
-_0804F8B0:
- movs r0, 0x64
- adds r4, r6, 0
- muls r4, r0
- ldr r0, _0804F8FC @ =gPlayerParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0
- movs r1, 0x3A
- bl GetMonData
- adds r1, r0, 0
- lsls r0, r5, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- bl GetHPBarLevel
- ldr r1, [r7]
- adds r1, 0x5D
- adds r1, r6
- strb r0, [r1]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r0, [r7]
- adds r0, 0x36
- ldrb r0, [r0]
- cmp r6, r0
- bcc _0804F8B0
- b _0804F954
- .align 2, 0
-_0804F8F8: .4byte gUnknown_2031DA8
-_0804F8FC: .4byte gPlayerParty
-_0804F900:
- movs r6, 0
- ldr r1, _0804F95C @ =gUnknown_2031DA8
- ldr r0, [r1]
- adds r0, 0x37
- ldrb r0, [r0]
- cmp r6, r0
- bcs _0804F954
- adds r7, r1, 0
-_0804F910:
- movs r0, 0x64
- adds r4, r6, 0
- muls r4, r0
- ldr r0, _0804F960 @ =gEnemyParty
- adds r4, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- lsls r0, 16
- lsrs r5, r0, 16
- adds r0, r4, 0
- movs r1, 0x3A
- bl GetMonData
- adds r1, r0, 0
- lsls r0, r5, 16
- asrs r0, 16
- lsls r1, 16
- asrs r1, 16
- bl GetHPBarLevel
- ldr r1, [r7]
- adds r1, 0x63
- adds r1, r6
- strb r0, [r1]
- adds r0, r6, 0x1
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r0, [r7]
- adds r0, 0x37
- ldrb r0, [r0]
- cmp r6, r0
- bcc _0804F910
-_0804F954:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0804F95C: .4byte gUnknown_2031DA8
-_0804F960: .4byte gEnemyParty
- thumb_func_end sub_804F890
-
- thumb_func_start sub_804F964
-sub_804F964: @ 804F964
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r5, 0
-_0804F96C:
- movs r4, 0
- ldr r2, _0804F9D0 @ =gUnknown_2031DA8
- ldr r0, [r2]
- adds r0, 0x36
- adds r0, r5
- adds r1, r5, 0x1
- mov r8, r1
- ldrb r0, [r0]
- cmp r4, r0
- bge _0804F9BE
- adds r6, r2, 0
- lsls r0, r5, 1
- adds r0, r5
- lsls r7, r0, 1
-_0804F988:
- ldr r2, [r6]
- adds r3, r4, r7
- adds r0, r2, 0
- adds r0, 0x28
- adds r0, r3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0804F9D4 @ =gSprites
- adds r0, r1
- adds r2, 0x5D
- adds r2, r3
- ldrb r2, [r2]
- movs r1, 0x4
- subs r1, r2
- lsls r1, 24
- lsrs r1, 24
- bl MonIcon_SetAnim
- adds r4, 0x1
- ldr r0, [r6]
- adds r0, 0x36
- adds r0, r5
- ldrb r0, [r0]
- cmp r4, r0
- blt _0804F988
-_0804F9BE:
- mov r5, r8
- cmp r5, 0x1
- ble _0804F96C
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0804F9D0: .4byte gUnknown_2031DA8
-_0804F9D4: .4byte gSprites
- thumb_func_end sub_804F964
-
- thumb_func_start sub_804F9D8
-sub_804F9D8: @ 804F9D8
- push {r4,r5,lr}
- movs r2, 0
- ldr r5, _0804FA08 @ =gSaveBlock1Ptr
- ldr r4, _0804FA0C @ =0x0000309c
- ldr r3, _0804FA10 @ =gUnknown_2031DA8
-_0804F9E2:
- ldr r0, [r5]
- adds r0, r4
- adds r1, r0, r2
- ldrb r0, [r1]
- cmp r0, 0
- bne _0804F9FC
- ldr r0, [r3]
- adds r0, 0xA9
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804F9FC
- strb r0, [r1]
-_0804F9FC:
- adds r2, 0x1
- cmp r2, 0xA
- ble _0804F9E2
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0804FA08: .4byte gSaveBlock1Ptr
-_0804FA0C: .4byte 0x0000309c
-_0804FA10: .4byte gUnknown_2031DA8
- thumb_func_end sub_804F9D8
-
- thumb_func_start sub_804FA14
-sub_804FA14: @ 804FA14
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x30
- mov r8, r0
- adds r7, r1, 0
- mov r9, r2
- movs r5, 0
- cmp r5, r7
- bge _0804FA4E
- mov r6, sp
-_0804FA2C:
- movs r0, 0x64
- adds r4, r5, 0
- muls r4, r0
- add r4, r8
- adds r0, r4, 0
- movs r1, 0x41
- bl GetMonData
- str r0, [r6, 0x18]
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- stm r6!, {r0}
- adds r5, 0x1
- cmp r5, r7
- blt _0804FA2C
-_0804FA4E:
- bl IsNationalPokedexEnabled
- mov r1, r9
- lsls r4, r1, 2
- cmp r0, 0
- bne _0804FA70
- add r0, sp, 0x18
- adds r0, r4
- ldr r0, [r0]
- cmp r0, 0x97
- ble _0804FA68
- movs r0, 0x2
- b _0804FB24
-_0804FA68:
- cmp r0, 0
- bne _0804FA70
- movs r0, 0x3
- b _0804FB24
-_0804FA70:
- 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 r0, _0804FAB0 @ =gLinkPlayers
- adds r1, r0
- ldrb r0, [r1]
- subs r0, 0x1
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bls _0804FAB8
- ldrb r1, [r1, 0x12]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0
- bne _0804FAB8
- add r0, sp, 0x18
- adds r0, r4
- ldr r1, [r0]
- movs r0, 0xCE
- lsls r0, 1
- cmp r1, r0
- bne _0804FAB4
- movs r0, 0x5
- b _0804FB24
- .align 2, 0
-_0804FAB0: .4byte gLinkPlayers
-_0804FAB4:
- cmp r1, 0x97
- bgt _0804FADE
-_0804FAB8:
- mov r1, sp
- adds r0, r1, r4
- ldr r1, [r0]
- movs r0, 0xCD
- lsls r0, 1
- cmp r1, r0
- beq _0804FACA
- cmp r1, 0x97
- bne _0804FAE2
-_0804FACA:
- movs r0, 0x64
- mov r1, r9
- muls r1, r0
- adds r0, r1, 0
- add r0, r8
- movs r1, 0x50
- bl GetMonData
- cmp r0, 0
- bne _0804FAE2
-_0804FADE:
- movs r0, 0x4
- b _0804FB24
-_0804FAE2:
- cmp r7, 0
- ble _0804FB00
- movs r3, 0xCE
- lsls r3, 1
- movs r2, 0
- add r1, sp, 0x18
- adds r5, r7, 0
-_0804FAF0:
- ldr r0, [r1]
- cmp r0, r3
- bne _0804FAF8
- str r2, [r1]
-_0804FAF8:
- adds r1, 0x4
- subs r5, 0x1
- cmp r5, 0
- bne _0804FAF0
-_0804FB00:
- movs r2, 0
- movs r5, 0
- cmp r2, r7
- bge _0804FB1A
- add r1, sp, 0x18
-_0804FB0A:
- cmp r5, r9
- beq _0804FB12
- ldr r0, [r1]
- adds r2, r0
-_0804FB12:
- adds r1, 0x4
- adds r5, 0x1
- cmp r5, r7
- blt _0804FB0A
-_0804FB1A:
- cmp r2, 0
- bne _0804FB22
- movs r0, 0x1
- b _0804FB24
-_0804FB22:
- movs r0, 0
-_0804FB24:
- add sp, 0x30
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_804FA14
-
- thumb_func_start sub_804FB34
-sub_804FB34: @ 804FB34
- push {r4-r7,lr}
- ldr r0, _0804FBB4 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- beq _0804FBC0
- bl GetMultiplayerId
- ldr r6, _0804FBB8 @ =gLinkPlayers
- movs r7, 0x1
- eors r0, r7
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r6
- ldrb r1, [r1]
- subs r0, r1, 0x4
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- bls _0804FBC0
- subs r0, r1, 0x1
- lsls r0, 16
- lsrs r0, 16
- movs r4, 0x2
- cmp r0, 0x1
- bhi _0804FB6E
- movs r4, 0x1
-_0804FB6E:
- cmp r4, 0
- ble _0804FBC0
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r6
- ldrb r1, [r1, 0x12]
- movs r5, 0xF0
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- beq _0804FBBC
- cmp r4, 0x2
- bne _0804FBC0
- bl GetMultiplayerId
- eors r0, r7
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r1, r6
- ldrb r1, [r1, 0x12]
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- bne _0804FBC0
- movs r0, 0x2
- b _0804FBC2
- .align 2, 0
-_0804FBB4: .4byte gReceivedRemoteLinkPlayers
-_0804FBB8: .4byte gLinkPlayers
-_0804FBBC:
- movs r0, 0x1
- b _0804FBC2
-_0804FBC0:
- movs r0, 0
-_0804FBC2:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_804FB34
-
- thumb_func_start sub_804FBC8
-sub_804FBC8: @ 804FBC8
- push {lr}
- lsls r0, 16
- lsrs r2, r0, 16
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0xCD
- lsls r0, 1
- cmp r2, r0
- beq _0804FBDE
- cmp r2, 0x97
- bne _0804FBE6
-_0804FBDE:
- cmp r1, 0
- bne _0804FBE6
- movs r0, 0x1
- b _0804FBE8
-_0804FBE6:
- movs r0, 0
-_0804FBE8:
- pop {r1}
- bx r1
- thumb_func_end sub_804FBC8
-
- thumb_func_start sub_804FBEC
-sub_804FBEC: @ 804FBEC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r4, [sp, 0x24]
- ldr r5, [sp, 0x28]
- ldr r6, [sp, 0x2C]
- lsls r2, 16
- lsrs r7, r2, 16
- lsls r3, 16
- lsrs r3, 16
- lsls r4, 24
- lsrs r4, 24
- mov r8, r4
- lsls r5, 16
- lsrs r5, 16
- lsls r6, 24
- lsrs r6, 24
- lsls r2, r0, 23
- lsrs r2, 31
- mov r9, r2
- lsls r0, 24
- lsrs r4, r0, 31
- lsls r0, r1, 23
- lsrs r0, 31
- mov r10, r0
- lsls r0, r1, 24
- lsrs r0, 31
- lsls r1, 18
- lsrs r1, 28
- subs r1, 0x4
- lsls r1, 24
- lsrs r1, 24
- movs r2, 0x1
- cmp r1, 0x1
- bhi _0804FC3A
- movs r2, 0
-_0804FC3A:
- cmp r2, 0
- beq _0804FC4E
- cmp r4, 0
- bne _0804FC46
- movs r0, 0x8
- b _0804FCCE
-_0804FC46:
- cmp r0, 0
- bne _0804FC4E
- movs r0, 0x9
- b _0804FCCE
-_0804FC4E:
- adds r0, r5, 0
- adds r1, r6, 0
- str r3, [sp]
- bl sub_804FBC8
- ldr r3, [sp]
- cmp r0, 0
- bne _0804FCB2
- movs r0, 0xCE
- lsls r0, 1
- cmp r3, r0
- bne _0804FC6E
- cmp r7, r3
- beq _0804FC8C
- movs r0, 0x2
- b _0804FCCE
-_0804FC6E:
- ldr r0, _0804FC88 @ =gBaseStats
- lsls r1, r7, 3
- subs r1, r7
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x6]
- cmp r0, r8
- beq _0804FC8C
- ldrb r0, [r1, 0x7]
- cmp r0, r8
- beq _0804FC8C
- movs r0, 0x1
- b _0804FCCE
- .align 2, 0
-_0804FC88: .4byte gBaseStats
-_0804FC8C:
- movs r0, 0xCE
- lsls r0, 1
- cmp r7, r0
- bne _0804FC9C
- cmp r7, r3
- beq _0804FC9C
- movs r0, 0x3
- b _0804FCCE
-_0804FC9C:
- mov r0, r9
- cmp r0, 0
- bne _0804FCBE
- movs r0, 0xCE
- lsls r0, 1
- cmp r7, r0
- bne _0804FCAE
- movs r0, 0x6
- b _0804FCCE
-_0804FCAE:
- cmp r7, 0x97
- bls _0804FCB6
-_0804FCB2:
- movs r0, 0x4
- b _0804FCCE
-_0804FCB6:
- cmp r3, 0x97
- bls _0804FCBE
- movs r0, 0x5
- b _0804FCCE
-_0804FCBE:
- mov r0, r10
- cmp r0, 0
- bne _0804FCCC
- cmp r7, 0x97
- bls _0804FCCC
- movs r0, 0x7
- b _0804FCCE
-_0804FCCC:
- movs r0, 0
-_0804FCCE:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_804FBEC
-
- thumb_func_start sub_804FCE0
-sub_804FCE0: @ 804FCE0
- push {r4-r6,lr}
- lsls r1, 16
- lsrs r5, r1, 16
- adds r6, r5, 0
- lsls r2, 16
- lsrs r2, 16
- lsls r3, 24
- lsrs r3, 24
- lsls r0, 23
- lsrs r4, r0, 31
- adds r0, r2, 0
- adds r1, r3, 0
- bl sub_804FBC8
- cmp r0, 0
- bne _0804FD18
- cmp r4, 0
- bne _0804FD1C
- movs r0, 0xCE
- lsls r0, 1
- cmp r5, r0
- bne _0804FD10
- movs r0, 0x2
- b _0804FD1E
-_0804FD10:
- cmp r6, 0x97
- bls _0804FD1C
- cmp r6, r0
- beq _0804FD1C
-_0804FD18:
- movs r0, 0x1
- b _0804FD1E
-_0804FD1C:
- movs r0, 0
-_0804FD1E:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_804FCE0
-
- thumb_func_start sub_804FD24
-sub_804FD24: @ 804FD24
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA
- bne _0804FD40
- movs r0, 0x17
- bl PlaySE
- movs r0, 0
- strh r0, [r4, 0x2E]
-_0804FD40:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_804FD24
-
- thumb_func_start sub_804FD48
-sub_804FD48: @ 804FD48
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _0804FD72
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA
- bne _0804FD72
- movs r0, 0xBB
- bl PlaySE
- strh r5, [r4, 0x2E]
-_0804FD72:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_804FD48
-
- thumb_func_start sub_804FD78
-sub_804FD78: @ 804FD78
- push {lr}
- adds r2, r0, 0
- movs r0, 0x30
- ldrsh r1, [r2, r0]
- cmp r1, 0
- bne _0804FDAE
- ldrh r0, [r2, 0x2E]
- adds r0, 0x1
- strh r0, [r2, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xC
- bne _0804FD94
- strh r1, [r2, 0x2E]
-_0804FD94:
- movs r1, 0x2E
- ldrsh r0, [r2, r1]
- lsls r0, 1
- ldr r1, _0804FDB4 @ =gUnknown_826CF60
- adds r0, r1
- ldrb r1, [r2, 0x5]
- lsrs r1, 4
- adds r1, 0x10
- lsls r1, 4
- adds r1, 0x4
- movs r2, 0x2
- bl LoadPalette
-_0804FDAE:
- pop {r0}
- bx r0
- .align 2, 0
-_0804FDB4: .4byte gUnknown_826CF60
- thumb_func_end sub_804FD78
-
- thumb_func_start sub_804FDB8
-sub_804FDB8: @ 804FDB8
- push {lr}
- adds r2, r0, 0
- ldrh r1, [r2, 0x2E]
- adds r1, 0x1
- strh r1, [r2, 0x2E]
- ldrh r0, [r2, 0x26]
- adds r0, 0x1
- strh r0, [r2, 0x26]
- lsls r1, 16
- asrs r1, 16
- cmp r1, 0xA
- bne _0804FDD6
- adds r0, r2, 0
- bl DestroySprite
-_0804FDD6:
- pop {r0}
- bx r0
- thumb_func_end sub_804FDB8
-
- thumb_func_start sub_804FDDC
-sub_804FDDC: @ 804FDDC
- push {lr}
- adds r2, r0, 0
- ldrh r1, [r2, 0x2E]
- adds r1, 0x1
- strh r1, [r2, 0x2E]
- ldrh r0, [r2, 0x26]
- subs r0, 0x1
- strh r0, [r2, 0x26]
- lsls r1, 16
- asrs r1, 16
- cmp r1, 0xA
- bne _0804FDFA
- adds r0, r2, 0
- bl DestroySprite
-_0804FDFA:
- pop {r0}
- bx r0
- thumb_func_end sub_804FDDC
-
- thumb_func_start sub_804FE00
-sub_804FE00: @ 804FE00
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xF
- bne _0804FE1C
- movs r0, 0xC5
- bl PlaySE
- movs r0, 0
- strh r0, [r4, 0x2E]
-_0804FE1C:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_804FE00
-
- thumb_func_start sub_804FE24
-sub_804FE24: @ 804FE24
- push {r4,r5,lr}
- sub sp, 0x20
- ldr r0, _0804FEB0 @ =gUnknown_2031DAC
- ldr r0, [r0]
- mov r12, r0
- adds r0, 0xD4
- ldrh r1, [r0]
- lsls r1, 8
- adds r0, 0x2
- ldrh r2, [r0]
- lsls r2, 8
- adds r0, 0x6
- movs r4, 0
- ldrsh r3, [r0, r4]
- adds r0, 0x2
- movs r5, 0
- ldrsh r0, [r0, r5]
- str r0, [sp]
- mov r4, r12
- adds r4, 0xE8
- movs r5, 0
- ldrsh r0, [r4, r5]
- str r0, [sp, 0x4]
- movs r5, 0
- ldrsh r0, [r4, r5]
- str r0, [sp, 0x8]
- mov r0, r12
- adds r0, 0xEC
- ldrh r0, [r0]
- str r0, [sp, 0xC]
- add r0, sp, 0x10
- bl DoBgAffineSet
- add r0, sp, 0x10
- ldrh r1, [r0]
- movs r0, 0x20
- bl SetGpuReg
- add r0, sp, 0x10
- ldrh r1, [r0, 0x2]
- movs r0, 0x22
- bl SetGpuReg
- add r0, sp, 0x10
- ldrh r1, [r0, 0x4]
- movs r0, 0x24
- bl SetGpuReg
- add r0, sp, 0x10
- ldrh r1, [r0, 0x6]
- movs r0, 0x26
- bl SetGpuReg
- ldr r1, [sp, 0x18]
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x28
- bl SetGpuReg
- ldr r1, [sp, 0x1C]
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x2C
- bl SetGpuReg
- add sp, 0x20
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0804FEB0: .4byte gUnknown_2031DAC
- thumb_func_end sub_804FE24
-
- thumb_func_start sub_804FEB4
-sub_804FEB4: @ 804FEB4
- push {r4,lr}
- ldr r4, _0804FEFC @ =gUnknown_2031DAC
- ldr r0, [r4]
- adds r0, 0xE0
- ldrh r1, [r0]
- movs r0, 0x16
- bl SetGpuReg
- ldr r0, [r4]
- adds r0, 0xE2
- ldrh r1, [r0]
- movs r0, 0x14
- bl SetGpuReg
- movs r0, 0
- bl GetGpuReg
- lsls r0, 16
- movs r1, 0xE0
- lsls r1, 11
- ands r1, r0
- cmp r1, 0
- bne _0804FF00
- ldr r0, [r4]
- adds r0, 0xE4
- ldrh r1, [r0]
- movs r0, 0x1A
- bl SetGpuReg
- ldr r0, [r4]
- adds r0, 0xE6
- ldrh r1, [r0]
- movs r0, 0x18
- bl SetGpuReg
- b _0804FF04
- .align 2, 0
-_0804FEFC: .4byte gUnknown_2031DAC
-_0804FF00:
- bl sub_804FE24
-_0804FF04:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_804FEB4
-
- thumb_func_start sub_804FF0C
-sub_804FF0C: @ 804FF0C
- push {lr}
- bl sub_804FEB4
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_804FF0C
-
- thumb_func_start sub_804FF24
-sub_804FF24: @ 804FF24
- push {r4,lr}
- ldr r3, _0804FF48 @ =gUnknown_2031DAC
- ldr r1, [r3]
- movs r0, 0x8A
- adds r0, r1
- mov r12, r0
- movs r2, 0
- movs r0, 0
- mov r4, r12
- strh r0, [r4]
- adds r1, 0x88
- strb r2, [r1]
- ldr r0, [r3]
- adds r0, 0x89
- strb r2, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0804FF48: .4byte gUnknown_2031DAC
- thumb_func_end sub_804FF24
-
- thumb_func_start sub_804FF4C
-sub_804FF4C: @ 804FF4C
- push {r4,r5,lr}
- ldr r0, _0804FF70 @ =gUnknown_2031DAC
- ldr r2, [r0]
- adds r1, r2, 0
- adds r1, 0x88
- adds r3, r2, 0
- adds r3, 0x89
- ldrb r1, [r1]
- adds r5, r0, 0
- ldrb r3, [r3]
- cmp r1, r3
- bne _0804FF74
- adds r1, r2, 0
- adds r1, 0x8A
- ldrh r0, [r1]
- adds r0, 0x1
- b _0804FF7A
- .align 2, 0
-_0804FF70: .4byte gUnknown_2031DAC
-_0804FF74:
- adds r1, r2, 0
- adds r1, 0x8A
- movs r0, 0
-_0804FF7A:
- strh r0, [r1]
- adds r4, r5, 0
- ldr r0, [r4]
- adds r0, 0x8A
- ldrh r1, [r0]
- movs r0, 0x96
- lsls r0, 1
- cmp r1, r0
- bls _0804FFAC
- bl CloseLink
- ldr r0, _0804FFC0 @ =CB2_LinkError
- bl SetMainCallback2
- ldr r1, [r4]
- adds r3, r1, 0
- adds r3, 0x8A
- movs r2, 0
- movs r0, 0
- strh r0, [r3]
- adds r1, 0x89
- strb r2, [r1]
- ldr r0, [r4]
- adds r0, 0x88
- strb r2, [r0]
-_0804FFAC:
- ldr r0, [r5]
- adds r1, r0, 0
- adds r1, 0x88
- ldrb r1, [r1]
- adds r0, 0x89
- strb r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0804FFC0: .4byte CB2_LinkError
- thumb_func_end sub_804FF4C
-
- thumb_func_start sub_804FFC4
-sub_804FFC4: @ 804FFC4
- push {lr}
- ldr r0, _0804FFD4 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _0804FFD8
- movs r0, 0
- b _0804FFE0
- .align 2, 0
-_0804FFD4: .4byte gReceivedRemoteLinkPlayers
-_0804FFD8:
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r0, 24
-_0804FFE0:
- pop {r1}
- bx r1
- thumb_func_end sub_804FFC4
-
- thumb_func_start sub_804FFE4
-sub_804FFE4: @ 804FFE4
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- movs r4, 0
- mov r8, r4
- cmp r6, 0
- bne _0805000A
- ldr r0, _08050034 @ =gUnknown_2031DA4
- ldrb r1, [r0]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08050038 @ =gPlayerParty
- adds r1, r0
- mov r8, r1
- movs r4, 0x1
-_0805000A:
- cmp r6, 0x1
- bne _08050028
- ldr r0, _08050034 @ =gUnknown_2031DA4
- ldrb r0, [r0, 0x1]
- movs r1, 0x6
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r1, r0
- ldr r0, _0805003C @ =gEnemyParty
- adds r1, r0
- mov r8, r1
- movs r4, 0x3
-_08050028:
- cmp r5, 0
- beq _08050040
- cmp r5, 0x1
- beq _080500C8
- b _0805011E
- .align 2, 0
-_08050034: .4byte gUnknown_2031DA4
-_08050038: .4byte gPlayerParty
-_0805003C: .4byte gEnemyParty
-_08050040:
- mov r0, r8
- movs r1, 0x41
- bl GetMonData
- lsls r0, 16
- lsrs r5, r0, 16
- mov r0, r8
- movs r1, 0
- bl GetMonData
- adds r7, r0, 0
- cmp r6, 0
- bne _0805007C
- lsls r0, r5, 3
- ldr r1, _08050074 @ =gMonFrontPicTable
- adds r0, r1
- ldr r1, _08050078 @ =gMonSpritesGfxPtr
- ldr r1, [r1]
- ldr r1, [r1, 0x8]
- adds r2, r5, 0
- adds r3, r7, 0
- bl HandleLoadSpecialPokePic
- movs r4, 0
- b _0805009A
- .align 2, 0
-_08050074: .4byte gMonFrontPicTable
-_08050078: .4byte gMonSpritesGfxPtr
-_0805007C:
- lsls r0, r5, 3
- ldr r1, _080500BC @ =gMonFrontPicTable
- adds r0, r1
- ldr r1, _080500C0 @ =gMonSpritesGfxPtr
- ldr r2, [r1]
- lsls r4, r6, 1
- adds r1, r4, 0x1
- lsls r1, 2
- adds r2, 0x4
- adds r2, r1
- ldr r1, [r2]
- adds r2, r5, 0
- adds r3, r7, 0
- bl HandleLoadSpecialPokePic_DontHandleDeoxys
-_0805009A:
- mov r0, r8
- bl GetMonSpritePalStruct
- bl LoadCompressedSpritePalette
- ldr r0, _080500C4 @ =gUnknown_2031DAC
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0xF0
- adds r0, r4
- strh r5, [r0]
- lsls r0, r6, 2
- adds r1, 0x68
- adds r1, r0
- str r7, [r1]
- b _0805011E
- .align 2, 0
-_080500BC: .4byte gMonFrontPicTable
-_080500C0: .4byte gMonSpritesGfxPtr
-_080500C4: .4byte gUnknown_2031DAC
-_080500C8:
- mov r0, r8
- bl GetMonSpritePalStruct
- ldrh r0, [r0, 0x4]
- adds r1, r4, 0
- bl SetMultiuseSpriteTemplateToPokemon
- ldr r0, _08050128 @ =gMultiuseSpriteTemplate
- movs r1, 0x78
- movs r2, 0x3C
- movs r3, 0x6
- bl CreateSprite
- ldr r4, _0805012C @ =gUnknown_2031DAC
- ldr r1, [r4]
- adds r1, 0x8E
- adds r1, r6
- strb r0, [r1]
- ldr r3, _08050130 @ =gSprites
- ldr r0, [r4]
- adds r0, 0x8E
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0x8E
- adds r0, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r3, 0x1C
- adds r0, r3
- ldr r1, _08050134 @ =SpriteCallbackDummy
- str r1, [r0]
-_0805011E:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08050128: .4byte gMultiuseSpriteTemplate
-_0805012C: .4byte gUnknown_2031DAC
-_08050130: .4byte gSprites
-_08050134: .4byte SpriteCallbackDummy
- thumb_func_end sub_804FFE4
-
- thumb_func_start sub_8050138
-sub_8050138: @ 8050138
- push {r4-r6,lr}
- sub sp, 0x4
- ldr r1, _08050158 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r2, r1, 0
- cmp r0, 0xC
- bls _0805014E
- b _08050472
-_0805014E:
- lsls r0, 2
- ldr r1, _0805015C @ =_08050160
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08050158: .4byte gMain
-_0805015C: .4byte _08050160
- .align 2, 0
-_08050160:
- .4byte _08050194
- .4byte _08050240
- .4byte _08050288
- .4byte _080502A8
- .4byte _080502F2
- .4byte _08050320
- .4byte _08050344
- .4byte _0805035C
- .4byte _08050366
- .4byte _08050380
- .4byte _0805039C
- .4byte _08050430
- .4byte _0805044C
-_08050194:
- ldr r0, _08050228 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _080501A8
- ldr r1, _0805022C @ =gLinkType
- ldr r2, _08050230 @ =0x00001144
- adds r0, r2, 0
- strh r0, [r1]
- bl CloseLink
-_080501A8:
- ldr r4, _08050234 @ =gUnknown_2031DAC
- movs r0, 0x88
- lsls r0, 1
- bl AllocZeroed
- str r0, [r4]
- bl AllocateMonSpritesGfx
- bl ResetTasks
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- ldr r0, _08050238 @ =sub_804FF0C
- bl SetVBlankCallback
- bl sub_80504CC
- bl sub_804FF24
- ldr r1, _0805023C @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- movs r2, 0
- strb r0, [r1]
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0x8C
- strh r2, [r0]
- adds r0, 0x8
- strh r2, [r0]
- adds r1, 0xEE
- movs r0, 0x1
- strb r0, [r1]
- ldr r3, [r4]
- adds r0, r3, 0
- adds r0, 0xD4
- movs r1, 0x40
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r2, [r0]
- adds r0, 0x2
- strh r2, [r0]
- adds r1, r3, 0
- adds r1, 0xDC
- movs r0, 0x78
- strh r0, [r1]
- adds r1, 0x2
- movs r0, 0x50
- strh r0, [r1]
- adds r1, 0xA
- adds r0, 0xB0
- strh r0, [r1]
- adds r0, r3, 0
- adds r0, 0xEC
- strh r2, [r0]
- b _08050472
- .align 2, 0
-_08050228: .4byte gReceivedRemoteLinkPlayers
-_0805022C: .4byte gLinkType
-_08050230: .4byte 0x00001144
-_08050234: .4byte gUnknown_2031DAC
-_08050238: .4byte sub_804FF0C
-_0805023C: .4byte gMain
-_08050240:
- ldr r0, _08050270 @ =gReceivedRemoteLinkPlayers
- ldrb r5, [r0]
- cmp r5, 0
- bne _0805027C
- ldr r4, _08050274 @ =gUnknown_2031DAC
- ldr r0, [r4]
- movs r1, 0x84
- lsls r1, 1
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- bl OpenLink
- ldr r1, _08050278 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r0, [r4]
- str r5, [r0, 0x64]
- b _08050472
- .align 2, 0
-_08050270: .4byte gReceivedRemoteLinkPlayers
-_08050274: .4byte gUnknown_2031DAC
-_08050278: .4byte gMain
-_0805027C:
- movs r0, 0x87
- lsls r0, 3
- adds r1, r2, r0
- movs r0, 0x4
- strb r0, [r1]
- b _08050472
-_08050288:
- ldr r0, _080502A4 @ =gUnknown_2031DAC
- ldr r1, [r0]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x3C
- bhi _08050298
- b _08050472
-_08050298:
- movs r0, 0
- str r0, [r1, 0x64]
- movs r0, 0x87
- lsls r0, 3
- adds r1, r2, r0
- b _08050440
- .align 2, 0
-_080502A4: .4byte gUnknown_2031DAC
-_080502A8:
- bl IsLinkMaster
- lsls r0, 24
- cmp r0, 0
- bne _080502B4
- b _08050438
-_080502B4:
- bl GetLinkPlayerCount_2
- adds r4, r0, 0
- bl GetSavedPlayerCount
- lsls r4, 24
- lsls r0, 24
- cmp r4, r0
- bcc _080502EC
- ldr r0, _080502E4 @ =gUnknown_2031DAC
- ldr r1, [r0]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x1E
- bhi _080502D6
- b _08050472
-_080502D6:
- bl CheckShouldAdvanceLinkState
- ldr r1, _080502E8 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _08050440
- .align 2, 0
-_080502E4: .4byte gUnknown_2031DAC
-_080502E8: .4byte gMain
-_080502EC:
- bl sub_804FF4C
- b _08050472
-_080502F2:
- bl sub_804FF4C
- ldr r0, _08050318 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _08050300
- b _08050472
-_08050300:
- bl IsLinkPlayerDataExchangeComplete
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0805030E
- b _08050472
-_0805030E:
- ldr r1, _0805031C @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _08050440
- .align 2, 0
-_08050318: .4byte gReceivedRemoteLinkPlayers
-_0805031C: .4byte gMain
-_08050320:
- ldr r2, _08050340 @ =gUnknown_2031DAC
- ldr r0, [r2]
- adds r0, 0x72
- movs r1, 0
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0x73
- strb r1, [r0]
- ldr r0, [r2]
- adds r0, 0x93
- strb r1, [r0]
- movs r0, 0
- bl sub_804FFE4
- b _08050438
- .align 2, 0
-_08050340: .4byte gUnknown_2031DAC
-_08050344:
- movs r0, 0
- movs r1, 0x1
- bl sub_804FFE4
- ldr r1, _08050358 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _08050440
- .align 2, 0
-_08050358: .4byte gMain
-_0805035C:
- movs r0, 0x1
- movs r1, 0
- bl sub_804FFE4
- b _08050438
-_08050366:
- movs r0, 0x1
- movs r1, 0x1
- bl sub_804FFE4
- bl sub_80504B0
- ldr r1, _0805037C @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _08050440
- .align 2, 0
-_0805037C: .4byte gMain
-_08050380:
- bl sub_8050DE0
- ldr r0, _08050394 @ =gUnknown_826CDD4
- bl LoadSpriteSheet
- ldr r0, _08050398 @ =gUnknown_826CDDC
- bl LoadSpritePalette
- b _08050438
- .align 2, 0
-_08050394: .4byte gUnknown_826CDD4
-_08050398: .4byte gUnknown_826CDDC
-_0805039C:
- 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 r4, _08050418 @ =gUnknown_2031DA4
- ldrb r0, [r4]
- movs r6, 0x64
- muls r0, r6
- ldr r1, _0805041C @ =gPlayerParty
- adds r0, r1
- movs r1, 0x41
- bl GetMonData
- ldr r5, _08050420 @ =gUnknown_2031DAC
- ldr r1, [r5]
- adds r1, 0xF8
- strh r0, [r1]
- ldrb r0, [r4, 0x1]
- movs r1, 0x6
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- muls r0, r6
- ldr r1, _08050424 @ =gEnemyParty
- adds r0, r1
- movs r1, 0x41
- bl GetMonData
- ldr r4, [r5]
- adds r1, r4, 0
- adds r1, 0xFA
- strh r0, [r1]
- adds r4, 0xFC
- 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 r0, _08050428 @ =gLinkPlayers + 8
- adds r1, r0
- adds r0, r4, 0
- movs r2, 0x7
- bl memcpy
- ldr r1, _0805042C @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _08050440
- .align 2, 0
-_08050418: .4byte gUnknown_2031DA4
-_0805041C: .4byte gPlayerParty
-_08050420: .4byte gUnknown_2031DAC
-_08050424: .4byte gEnemyParty
-_08050428: .4byte gLinkPlayers + 8
-_0805042C: .4byte gMain
-_08050430:
- bl sub_805049C
- bl sub_8050E24
-_08050438:
- ldr r1, _08050448 @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
-_08050440:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _08050472
- .align 2, 0
-_08050448: .4byte gMain
-_0805044C:
- ldr r0, _08050490 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08050472
- ldr r0, _08050494 @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _0805046C
- bl LoadWirelessStatusIndicatorSpriteGfx
- movs r0, 0
- movs r1, 0
- bl CreateWirelessStatusIndicatorSprite
-_0805046C:
- ldr r0, _08050498 @ =sub_8053D84
- bl SetMainCallback2
-_08050472:
- bl RunTasks
- bl RunTextPrinters
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08050490: .4byte gPaletteFade
-_08050494: .4byte gWirelessCommType
-_08050498: .4byte sub_8053D84
- thumb_func_end sub_8050138
-
- thumb_func_start sub_805049C
-sub_805049C: @ 805049C
- push {lr}
- movs r0, 0x5
- bl sub_8050968
- movs r0, 0
- bl sub_8050968
- pop {r0}
- bx r0
- thumb_func_end sub_805049C
-
- thumb_func_start sub_80504B0
-sub_80504B0: @ 80504B0
- push {lr}
- movs r0, 0
- movs r1, 0xFF
- bl FillWindowPixelBuffer
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- pop {r0}
- bx r0
- thumb_func_end sub_80504B0
-
- thumb_func_start sub_80504CC
-sub_80504CC: @ 80504CC
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- sub sp, 0x4
- movs r0, 0
- movs r1, 0
- bl SetGpuReg
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, _080505B4 @ =gUnknown_826D1D4
- movs r0, 0
- movs r2, 0x4
- bl InitBgsFromTemplates
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r5, 0x80
- lsls r5, 4
- adds r0, r5, 0
- bl Alloc
- adds r1, r0, 0
- movs r0, 0
- bl SetBgTilemapBuffer
- adds r0, r5, 0
- bl Alloc
- adds r1, r0, 0
- movs r0, 0x1
- bl SetBgTilemapBuffer
- adds r0, r5, 0
- bl Alloc
- adds r1, r0, 0
- movs r0, 0x3
- bl SetBgTilemapBuffer
- bl DeactivateAllTextPrinters
- ldr r0, _080505B8 @ =gBattleTextboxTiles
- mov r10, r0
- movs r0, 0
- mov r9, r0
- str r0, [sp]
- mov r1, r10
- movs r2, 0
- movs r3, 0
- bl DecompressAndLoadBgGfxUsingHeap
- ldr r0, _080505BC @ =gFile_graphics_interface_menu_map_tilemap
- mov r8, r0
- ldr r4, _080505C0 @ =gDecompressionBuffer
- adds r1, r4, 0
- bl LZDecompressWram
- movs r0, 0
- adds r1, r4, 0
- adds r2, r5, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- ldr r6, _080505C4 @ =gBattleTextboxPalette
- adds r0, r6, 0
- movs r1, 0
- movs r2, 0x20
- bl LoadCompressedPalette
- ldr r0, _080505C8 @ =gUnknown_826D1BC
- bl InitWindows
- mov r0, r9
- str r0, [sp]
- movs r0, 0
- mov r1, r10
- movs r2, 0
- movs r3, 0
- bl DecompressAndLoadBgGfxUsingHeap
- mov r0, r8
- adds r1, r4, 0
- bl LZDecompressWram
- movs r0, 0
- adds r1, r4, 0
- adds r2, r5, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- adds r0, r6, 0
- movs r1, 0
- movs r2, 0x20
- bl LoadCompressedPalette
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080505B4: .4byte gUnknown_826D1D4
-_080505B8: .4byte gBattleTextboxTiles
-_080505BC: .4byte gFile_graphics_interface_menu_map_tilemap
-_080505C0: .4byte gDecompressionBuffer
-_080505C4: .4byte gBattleTextboxPalette
-_080505C8: .4byte gUnknown_826D1BC
- thumb_func_end sub_80504CC
-
- thumb_func_start sub_80505CC
-sub_80505CC: @ 80505CC
- push {r4,r5,lr}
- sub sp, 0xC
- ldr r0, _080505EC @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0xC
- bls _080505E0
- b _0805077E
-_080505E0:
- lsls r0, 2
- ldr r1, _080505F0 @ =_080505F4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080505EC: .4byte gMain
-_080505F0: .4byte _080505F4
- .align 2, 0
-_080505F4:
- .4byte _08050628
- .4byte _0805077E
- .4byte _0805077E
- .4byte _0805077E
- .4byte _0805077E
- .4byte _080506EC
- .4byte _080506F6
- .4byte _08050700
- .4byte _08050710
- .4byte _08050730
- .4byte _0805074C
- .4byte _08050754
- .4byte _08050778
-_08050628:
- ldr r1, _080506CC @ =gUnknown_2031DA4
- ldr r0, _080506D0 @ =gSpecialVar_0x8005
- ldrh r0, [r0]
- movs r5, 0
- strb r0, [r1]
- movs r0, 0x6
- strb r0, [r1, 0x1]
- ldr r4, _080506D4 @ =gLinkPlayers + 8
- ldr r0, _080506D8 @ =gSaveBlock2Ptr
- ldr r1, [r0]
- adds r0, r4, 0
- bl StringCopy
- ldr r0, _080506DC @ =gEnemyParty
- movs r1, 0x7
- mov r2, sp
- bl GetMonData
- adds r4, 0x1C
- adds r0, r4, 0
- mov r1, sp
- bl StringCopy
- ldr r4, _080506E0 @ =gUnknown_2031DAC
- movs r0, 0x88
- lsls r0, 1
- bl AllocZeroed
- str r0, [r4]
- bl AllocateMonSpritesGfx
- bl ResetTasks
- bl ResetSpriteData
- bl FreeAllSpritePalettes
- ldr r0, _080506E4 @ =sub_804FF0C
- bl SetVBlankCallback
- bl sub_80504CC
- ldr r0, [r4]
- adds r0, 0xEE
- strb r5, [r0]
- ldr r2, [r4]
- adds r0, r2, 0
- adds r0, 0x8C
- strh r5, [r0]
- adds r0, 0x8
- strh r5, [r0]
- adds r0, 0x40
- movs r1, 0x40
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- adds r0, 0x2
- strh r5, [r0]
- adds r0, 0x2
- strh r5, [r0]
- adds r1, r2, 0
- adds r1, 0xDC
- movs r0, 0x78
- strh r0, [r1]
- adds r1, 0x2
- movs r0, 0x50
- strh r0, [r1]
- adds r1, 0xA
- adds r0, 0xB0
- strh r0, [r1]
- adds r0, r2, 0
- adds r0, 0xEC
- strh r5, [r0]
- str r5, [r2, 0x64]
- ldr r0, _080506E8 @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- movs r1, 0x5
- strb r1, [r0]
- b _0805077E
- .align 2, 0
-_080506CC: .4byte gUnknown_2031DA4
-_080506D0: .4byte gSpecialVar_0x8005
-_080506D4: .4byte gLinkPlayers + 8
-_080506D8: .4byte gSaveBlock2Ptr
-_080506DC: .4byte gEnemyParty
-_080506E0: .4byte gUnknown_2031DAC
-_080506E4: .4byte sub_804FF0C
-_080506E8: .4byte gMain
-_080506EC:
- movs r0, 0
- movs r1, 0
- bl sub_804FFE4
- b _08050764
-_080506F6:
- movs r0, 0
- movs r1, 0x1
- bl sub_804FFE4
- b _08050764
-_08050700:
- movs r0, 0x1
- movs r1, 0
- bl sub_804FFE4
- movs r0, 0
- bl ShowBg
- b _08050764
-_08050710:
- movs r0, 0x1
- movs r1, 0x1
- bl sub_804FFE4
- movs r0, 0
- movs r1, 0xFF
- bl FillWindowPixelBuffer
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- b _08050764
-_08050730:
- bl sub_8050DE0
- ldr r0, _08050744 @ =gUnknown_826CDD4
- bl LoadSpriteSheet
- ldr r0, _08050748 @ =gUnknown_826CDDC
- bl LoadSpritePalette
- b _08050764
- .align 2, 0
-_08050744: .4byte gUnknown_826CDD4
-_08050748: .4byte gUnknown_826CDDC
-_0805074C:
- movs r0, 0
- bl ShowBg
- b _08050764
-_08050754:
- movs r0, 0x5
- bl sub_8050968
- movs r0, 0
- bl sub_8050968
- bl sub_8050E24
-_08050764:
- ldr r1, _08050774 @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _0805077E
- .align 2, 0
-_08050774: .4byte gMain
-_08050778:
- ldr r0, _0805079C @ =sub_8050948
- bl SetMainCallback2
-_0805077E:
- bl RunTasks
- bl RunTextPrinters
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0805079C: .4byte sub_8050948
- thumb_func_end sub_80505CC
-
- thumb_func_start sub_80507A0
-sub_80507A0: @ 80507A0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r1, r0
- ldr r0, _080507FC @ =gPlayerParty
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _080507F4
- adds r0, r5, 0
- movs r1, 0xB
- movs r2, 0
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- movs r1, 0
- movs r2, 0
- bl GetMonData
- adds r5, r0, 0
- adds r0, r4, 0
- bl SpeciesToNationalPokedexNum
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r4, 0
- movs r1, 0x2
- bl GetSetPokedexFlag
- adds r0, r4, 0
- movs r1, 0x3
- adds r2, r5, 0
- bl HandleSetPokedexFlag
-_080507F4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080507FC: .4byte gPlayerParty
- thumb_func_end sub_80507A0
-
- thumb_func_start sub_8050800
-sub_8050800: @ 8050800
- push {lr}
- bl GetMultiplayerId
- pop {r0}
- bx r0
- thumb_func_end sub_8050800
-
- thumb_func_start sub_805080C
-sub_805080C: @ 805080C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x4
- adds r4, r1, 0
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r4, 24
- lsrs r4, 24
- movs r5, 0x64
- mov r1, r9
- muls r1, r5
- ldr r0, _080508D8 @ =gPlayerParty
- adds r7, r1, r0
- adds r0, r7, 0
- movs r1, 0x40
- bl GetMonData
- lsls r0, 16
- lsrs r6, r0, 16
- adds r1, r4, 0
- muls r1, r5
- ldr r0, _080508DC @ =gEnemyParty
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0x40
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- cmp r6, 0xFF
- beq _08050866
- ldr r0, _080508E0 @ =gSaveBlock1Ptr
- lsls r1, r6, 3
- adds r1, r6
- lsls r1, 2
- ldr r2, _080508E4 @ =0x00002cd0
- adds r1, r2
- ldr r0, [r0]
- adds r0, r1
- bl ClearMailStruct
-_08050866:
- ldr r4, _080508E8 @ =gUnknown_2031DAC
- ldr r0, [r4]
- adds r1, r7, 0
- movs r2, 0x64
- bl memcpy
- adds r0, r7, 0
- adds r1, r5, 0
- movs r2, 0x64
- bl memcpy
- ldr r1, [r4]
- adds r0, r5, 0
- movs r2, 0x64
- bl memcpy
- movs r1, 0x46
- mov r0, sp
- strb r1, [r0]
- adds r0, r7, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _080508A2
- adds r0, r7, 0
- movs r1, 0x20
- mov r2, sp
- bl SetMonData
-_080508A2:
- mov r0, r8
- cmp r0, 0xFF
- beq _080508B8
- lsls r1, r0, 3
- add r1, r8
- lsls r1, 2
- ldr r0, _080508EC @ =gUnknown_2031CCC
- adds r1, r0
- adds r0, r7, 0
- bl GiveMailToMon2
-_080508B8:
- mov r0, r9
- bl sub_80507A0
- ldr r0, _080508F0 @ =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- beq _080508CA
- bl sub_8050800
-_080508CA:
- add sp, 0x4
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080508D8: .4byte gPlayerParty
-_080508DC: .4byte gEnemyParty
-_080508E0: .4byte gSaveBlock1Ptr
-_080508E4: .4byte 0x00002cd0
-_080508E8: .4byte gUnknown_2031DAC
-_080508EC: .4byte gUnknown_2031CCC
-_080508F0: .4byte gReceivedRemoteLinkPlayers
- thumb_func_end sub_805080C
-
- thumb_func_start sub_80508F4
-sub_80508F4: @ 80508F4
- push {r4,lr}
- ldr r4, _08050908 @ =gUnknown_2031DAC
- ldr r0, [r4]
- adds r0, 0x93
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _0805090C
- cmp r0, 0x2
- beq _08050932
- b _0805093C
- .align 2, 0
-_08050908: .4byte gUnknown_2031DAC
-_0805090C:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08050932
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, [r4]
- adds r1, 0x74
- movs r2, 0x14
- bl SendBlock
- ldr r1, [r4]
- adds r1, 0x93
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_08050932:
- ldr r0, _08050944 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x93
- movs r1, 0
- strb r1, [r0]
-_0805093C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08050944: .4byte gUnknown_2031DAC
- thumb_func_end sub_80508F4
-
- thumb_func_start sub_8050948
-sub_8050948: @ 8050948
- push {lr}
- bl sub_8050F14
- bl RunTasks
- bl RunTextPrinters
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- pop {r0}
- bx r0
- thumb_func_end sub_8050948
-
- thumb_func_start sub_8050968
-sub_8050968: @ 8050968
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x7
- bls _08050974
- b _08050DB4
-_08050974:
- lsls r0, 2
- ldr r1, _08050980 @ =_08050984
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08050980: .4byte _08050984
- .align 2, 0
-_08050984:
- .4byte _080509A4
- .4byte _08050A18
- .4byte _08050AC4
- .4byte _08050B3C
- .4byte _08050B84
- .4byte _08050C54
- .4byte _08050C6C
- .4byte _08050D48
-_080509A4:
- ldr r0, _080509FC @ =gUnknown_2031DAC
- ldr r1, [r0]
- adds r2, r1, 0
- adds r2, 0xE4
- movs r0, 0
- strh r0, [r2]
- adds r1, 0xE6
- movs r0, 0xB4
- strh r0, [r1]
- movs r1, 0xAA
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- ldr r1, _08050A00 @ =0x00005206
- movs r0, 0xC
- bl SetGpuReg
- ldr r0, _08050A04 @ =gTradeGba2_Pal
- movs r1, 0x10
- movs r2, 0x60
- bl LoadPalette
- ldr r3, _08050A08 @ =gTradeGba_Gfx
- ldr r4, _08050A0C @ =0x06004000
- movs r5, 0xA1
- lsls r5, 5
- ldr r1, _08050A10 @ =0x040000d4
- ldr r6, _08050A14 @ =0x80000800
- movs r2, 0x80
- lsls r2, 5
- movs r7, 0x80
- lsls r7, 24
-_080509E6:
- str r3, [r1]
- str r4, [r1, 0x4]
- str r6, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r3, r2
- adds r4, r2
- subs r5, r2
- cmp r5, r2
- bhi _080509E6
- b _08050D98
- .align 2, 0
-_080509FC: .4byte gUnknown_2031DAC
-_08050A00: .4byte 0x00005206
-_08050A04: .4byte gTradeGba2_Pal
-_08050A08: .4byte gTradeGba_Gfx
-_08050A0C: .4byte 0x06004000
-_08050A10: .4byte 0x040000d4
-_08050A14: .4byte 0x80000800
-_08050A18:
- ldr r4, _08050A54 @ =gUnknown_2031DAC
- ldr r2, [r4]
- adds r1, r2, 0
- adds r1, 0xE2
- movs r0, 0
- strh r0, [r1]
- adds r2, 0xE0
- movs r1, 0xAE
- lsls r1, 1
- strh r1, [r2]
- movs r0, 0x16
- bl SetGpuReg
- ldr r1, _08050A58 @ =0x00008502
- movs r0, 0xA
- bl SetGpuReg
- ldr r1, _08050A5C @ =0x00009206
- movs r0, 0xC
- bl SetGpuReg
- ldr r0, [r4]
- movs r1, 0x84
- lsls r1, 1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _08050A64
- ldr r1, _08050A60 @ =gUnknown_826AA5C
- b _08050A66
- .align 2, 0
-_08050A54: .4byte gUnknown_2031DAC
-_08050A58: .4byte 0x00008502
-_08050A5C: .4byte 0x00009206
-_08050A60: .4byte gUnknown_826AA5C
-_08050A64:
- ldr r1, _08050AB0 @ =gUnknown_8269A5C
-_08050A66:
- ldr r2, _08050AB4 @ =0x06002800
- ldr r0, _08050AB8 @ =0x040000d4
- str r1, [r0]
- str r2, [r0, 0x4]
- ldr r1, _08050ABC @ =0x80000800
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- ldr r3, _08050AC0 @ =gTradeGba_Gfx
- movs r4, 0xC0
- lsls r4, 19
- movs r5, 0xA1
- lsls r5, 5
- ldr r1, _08050AB8 @ =0x040000d4
- ldr r6, _08050ABC @ =0x80000800
- movs r2, 0x80
- lsls r2, 5
- movs r7, 0x80
- lsls r7, 24
-_08050A8A:
- str r3, [r1]
- str r4, [r1, 0x4]
- str r6, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r3, r2
- adds r4, r2
- subs r5, r2
- cmp r5, r2
- bhi _08050A8A
- str r3, [r1]
- str r4, [r1, 0x4]
- lsrs r0, r5, 1
- orrs r0, r7
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- movs r1, 0x92
- lsls r1, 5
- b _08050B64
- .align 2, 0
-_08050AB0: .4byte gUnknown_8269A5C
-_08050AB4: .4byte 0x06002800
-_08050AB8: .4byte 0x040000d4
-_08050ABC: .4byte 0x80000800
-_08050AC0: .4byte gTradeGba_Gfx
-_08050AC4:
- ldr r0, _08050AF4 @ =gUnknown_2031DAC
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0xE0
- movs r1, 0
- strh r1, [r0]
- adds r0, 0x2
- strh r1, [r0]
- movs r1, 0x84
- lsls r1, 1
- adds r0, r2, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _08050B04
- ldr r1, _08050AF8 @ =0x00001241
- movs r0, 0
- bl SetGpuReg
- ldr r0, _08050AFC @ =gUnknown_3379A0Bin
- ldr r1, _08050B00 @ =0x06002800
- bl LZ77UnCompVram
- movs r0, 0x8
- b _08050B1E
- .align 2, 0
-_08050AF4: .4byte gUnknown_2031DAC
-_08050AF8: .4byte 0x00001241
-_08050AFC: .4byte gUnknown_3379A0Bin
-_08050B00: .4byte 0x06002800
-_08050B04:
- ldr r1, _08050B28 @ =0x00001241
- movs r0, 0
- bl SetGpuReg
- ldr r1, _08050B2C @ =gUnknown_826407C
- ldr r2, _08050B30 @ =0x06002800
- ldr r0, _08050B34 @ =0x040000d4
- str r1, [r0]
- str r2, [r0, 0x4]
- ldr r1, _08050B38 @ =0x80000400
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
- movs r0, 0x1
-_08050B1E:
- movs r1, 0x10
- movs r2, 0
- bl BlendPalettes
- b _08050DB4
- .align 2, 0
-_08050B28: .4byte 0x00001241
-_08050B2C: .4byte gUnknown_826407C
-_08050B30: .4byte 0x06002800
-_08050B34: .4byte 0x040000d4
-_08050B38: .4byte 0x80000400
-_08050B3C:
- ldr r0, _08050B6C @ =gUnknown_826BF5C
- movs r1, 0x30
- movs r2, 0x20
- bl LoadPalette
- ldr r0, _08050B70 @ =gWirelessSignal4bpp
- ldr r1, _08050B74 @ =0x06004000
- bl LZ77UnCompVram
- ldr r0, _08050B78 @ =gUnknown_826C60C
- ldr r1, _08050B7C @ =0x06009000
- bl LZ77UnCompVram
- ldr r0, _08050B80 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0xE4
- movs r1, 0x50
- strh r1, [r0]
- movs r1, 0xB2
- lsls r1, 5
-_08050B64:
- movs r0, 0
- bl SetGpuReg
- b _08050DB4
- .align 2, 0
-_08050B6C: .4byte gUnknown_826BF5C
-_08050B70: .4byte gWirelessSignal4bpp
-_08050B74: .4byte 0x06004000
-_08050B78: .4byte gUnknown_826C60C
-_08050B7C: .4byte 0x06009000
-_08050B80: .4byte gUnknown_2031DAC
-_08050B84:
- ldr r1, _08050C0C @ =0x00001441
- movs r0, 0
- bl SetGpuReg
- ldr r1, _08050C10 @ =0x00001287
- movs r0, 0xC
- bl SetGpuReg
- ldr r0, _08050C14 @ =gUnknown_2031DAC
- ldr r3, [r0]
- adds r1, r3, 0
- adds r1, 0xD4
- movs r2, 0
- movs r0, 0x40
- strh r0, [r1]
- adds r1, 0x2
- movs r0, 0x5C
- strh r0, [r1]
- adds r1, 0x12
- movs r0, 0x20
- strh r0, [r1]
- adds r1, 0x2
- movs r0, 0x80
- lsls r0, 3
- strh r0, [r1]
- adds r0, r3, 0
- adds r0, 0xEC
- strh r2, [r0]
- ldr r3, _08050C18 @ =gUnknown_826701C
- ldr r4, _08050C1C @ =0x06004000
- movs r5, 0xA1
- lsls r5, 6
- ldr r1, _08050C20 @ =0x040000d4
- ldr r6, _08050C24 @ =0x80000800
- movs r2, 0x80
- lsls r2, 5
- movs r7, 0x80
- lsls r7, 24
-_08050BD0:
- str r3, [r1]
- str r4, [r1, 0x4]
- str r6, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r3, r2
- adds r4, r2
- subs r5, r2
- cmp r5, r2
- bhi _08050BD0
- str r3, [r1]
- str r4, [r1, 0x4]
- lsrs r0, r5, 1
- orrs r0, r7
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- ldr r0, _08050C14 @ =gUnknown_2031DAC
- ldr r0, [r0]
- movs r1, 0x84
- lsls r1, 1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _08050C34
- ldr r1, _08050C28 @ =gUnknown_826985C
- ldr r2, _08050C2C @ =0x06009000
- ldr r0, _08050C20 @ =0x040000d4
- str r1, [r0]
- str r2, [r0, 0x4]
- ldr r1, _08050C30 @ =0x80000080
- b _08050DB0
- .align 2, 0
-_08050C0C: .4byte 0x00001441
-_08050C10: .4byte 0x00001287
-_08050C14: .4byte gUnknown_2031DAC
-_08050C18: .4byte gUnknown_826701C
-_08050C1C: .4byte 0x06004000
-_08050C20: .4byte 0x040000d4
-_08050C24: .4byte 0x80000800
-_08050C28: .4byte gUnknown_826985C
-_08050C2C: .4byte 0x06009000
-_08050C30: .4byte 0x80000080
-_08050C34:
- ldr r1, _08050C44 @ =gUnknown_826995C
- ldr r2, _08050C48 @ =0x06009000
- ldr r0, _08050C4C @ =0x040000d4
- str r1, [r0]
- str r2, [r0, 0x4]
- ldr r1, _08050C50 @ =0x80000080
- b _08050DB0
- .align 2, 0
-_08050C44: .4byte gUnknown_826995C
-_08050C48: .4byte 0x06009000
-_08050C4C: .4byte 0x040000d4
-_08050C50: .4byte 0x80000080
-_08050C54:
- ldr r0, _08050C68 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r1, r0, 0
- adds r1, 0xE0
- movs r2, 0
- strh r2, [r1]
- adds r0, 0xE2
- strh r2, [r0]
- b _08050DB4
- .align 2, 0
-_08050C68: .4byte gUnknown_2031DAC
-_08050C6C:
- ldr r1, _08050D00 @ =0x00001441
- movs r0, 0
- bl SetGpuReg
- ldr r1, _08050D04 @ =0x00001287
- movs r0, 0xC
- bl SetGpuReg
- ldr r0, _08050D08 @ =gUnknown_2031DAC
- ldr r3, [r0]
- adds r1, r3, 0
- adds r1, 0xD4
- movs r2, 0
- movs r0, 0x40
- strh r0, [r1]
- adds r1, 0x2
- movs r0, 0x5C
- strh r0, [r1]
- adds r1, 0x12
- adds r0, 0xA4
- strh r0, [r1]
- adds r1, 0x2
- movs r0, 0x80
- strh r0, [r1]
- subs r1, 0xE
- movs r0, 0x78
- strh r0, [r1]
- adds r1, 0x2
- movs r0, 0x50
- strh r0, [r1]
- adds r0, r3, 0
- adds r0, 0xEC
- strh r2, [r0]
- ldr r3, _08050D0C @ =gUnknown_826701C
- ldr r4, _08050D10 @ =0x06004000
- movs r5, 0xA1
- lsls r5, 6
- ldr r1, _08050D14 @ =0x040000d4
- ldr r6, _08050D18 @ =0x80000800
- movs r2, 0x80
- lsls r2, 5
- movs r7, 0x80
- lsls r7, 24
-_08050CC2:
- str r3, [r1]
- str r4, [r1, 0x4]
- str r6, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r3, r2
- adds r4, r2
- subs r5, r2
- cmp r5, r2
- bhi _08050CC2
- str r3, [r1]
- str r4, [r1, 0x4]
- lsrs r0, r5, 1
- orrs r0, r7
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- ldr r0, _08050D08 @ =gUnknown_2031DAC
- ldr r0, [r0]
- movs r1, 0x84
- lsls r1, 1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _08050D28
- ldr r1, _08050D1C @ =gUnknown_826985C
- ldr r2, _08050D20 @ =0x06009000
- ldr r0, _08050D14 @ =0x040000d4
- str r1, [r0]
- str r2, [r0, 0x4]
- ldr r1, _08050D24 @ =0x80000080
- b _08050DB0
- .align 2, 0
-_08050D00: .4byte 0x00001441
-_08050D04: .4byte 0x00001287
-_08050D08: .4byte gUnknown_2031DAC
-_08050D0C: .4byte gUnknown_826701C
-_08050D10: .4byte 0x06004000
-_08050D14: .4byte 0x040000d4
-_08050D18: .4byte 0x80000800
-_08050D1C: .4byte gUnknown_826985C
-_08050D20: .4byte 0x06009000
-_08050D24: .4byte 0x80000080
-_08050D28:
- ldr r1, _08050D38 @ =gUnknown_826995C
- ldr r2, _08050D3C @ =0x06009000
- ldr r0, _08050D40 @ =0x040000d4
- str r1, [r0]
- str r2, [r0, 0x4]
- ldr r1, _08050D44 @ =0x80000080
- b _08050DB0
- .align 2, 0
-_08050D38: .4byte gUnknown_826995C
-_08050D3C: .4byte 0x06009000
-_08050D40: .4byte 0x040000d4
-_08050D44: .4byte 0x80000080
-_08050D48:
- ldr r0, _08050DBC @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r1, r0, 0
- adds r1, 0xE4
- movs r2, 0
- strh r2, [r1]
- adds r0, 0xE6
- strh r2, [r0]
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- ldr r1, _08050DC0 @ =0x00005206
- movs r0, 0xC
- bl SetGpuReg
- ldr r0, _08050DC4 @ =gTradeGba2_Pal
- movs r1, 0x10
- movs r2, 0x60
- bl LoadPalette
- ldr r3, _08050DC8 @ =gTradeGba_Gfx
- ldr r4, _08050DCC @ =0x06004000
- movs r5, 0xA1
- lsls r5, 5
- ldr r1, _08050DD0 @ =0x040000d4
- ldr r6, _08050DD4 @ =0x80000800
- movs r2, 0x80
- lsls r2, 5
- movs r7, 0x80
- lsls r7, 24
-_08050D86:
- str r3, [r1]
- str r4, [r1, 0x4]
- str r6, [r1, 0x8]
- ldr r0, [r1, 0x8]
- adds r3, r2
- adds r4, r2
- subs r5, r2
- cmp r5, r2
- bhi _08050D86
-_08050D98:
- str r3, [r1]
- str r4, [r1, 0x4]
- lsrs r0, r5, 1
- orrs r0, r7
- str r0, [r1, 0x8]
- ldr r0, [r1, 0x8]
- ldr r1, _08050DD8 @ =gUnknown_826601C
- ldr r2, _08050DDC @ =0x06009000
- ldr r0, _08050DD0 @ =0x040000d4
- str r1, [r0]
- str r2, [r0, 0x4]
- ldr r1, _08050DD4 @ =0x80000800
-_08050DB0:
- str r1, [r0, 0x8]
- ldr r0, [r0, 0x8]
-_08050DB4:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08050DBC: .4byte gUnknown_2031DAC
-_08050DC0: .4byte 0x00005206
-_08050DC4: .4byte gTradeGba2_Pal
-_08050DC8: .4byte gTradeGba_Gfx
-_08050DCC: .4byte 0x06004000
-_08050DD0: .4byte 0x040000d4
-_08050DD4: .4byte 0x80000800
-_08050DD8: .4byte gUnknown_826601C
-_08050DDC: .4byte 0x06009000
- thumb_func_end sub_8050968
-
- thumb_func_start sub_8050DE0
-sub_8050DE0: @ 8050DE0
- push {lr}
- ldr r0, _08050E0C @ =gUnknown_826CE2C
- bl LoadSpriteSheet
- ldr r0, _08050E10 @ =gUnknown_826CE7C
- bl LoadSpriteSheet
- ldr r0, _08050E14 @ =gUnknown_826CEB0
- bl LoadSpriteSheet
- ldr r0, _08050E18 @ =gUnknown_826CF28
- bl LoadSpriteSheet
- ldr r0, _08050E1C @ =gUnknown_826CE34
- bl LoadSpritePalette
- ldr r0, _08050E20 @ =gUnknown_826CE3C
- bl LoadSpritePalette
- pop {r0}
- bx r0
- .align 2, 0
-_08050E0C: .4byte gUnknown_826CE2C
-_08050E10: .4byte gUnknown_826CE7C
-_08050E14: .4byte gUnknown_826CEB0
-_08050E18: .4byte gUnknown_826CF28
-_08050E1C: .4byte gUnknown_826CE34
-_08050E20: .4byte gUnknown_826CE3C
- thumb_func_end sub_8050DE0
-
- thumb_func_start sub_8050E24
-sub_8050E24: @ 8050E24
- push {r4,r5,lr}
- sub sp, 0x14
- ldr r0, _08050E94 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0xEE
- ldrb r0, [r0]
- cmp r0, 0
- beq _08050EB4
- bl GetMultiplayerId
- lsls r0, 24
- ldr r3, _08050E98 @ =gStringVar1
- movs r2, 0x80
- lsls r2, 17
- eors r2, r0
- lsrs r2, 24
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- ldr r0, _08050E9C @ =gLinkPlayers + 8
- adds r1, r0
- adds r0, r3, 0
- bl StringCopy
- ldr r5, _08050EA0 @ =gUnknown_2031DA4
- ldrb r0, [r5, 0x1]
- movs r1, 0x6
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- movs r4, 0x64
- muls r0, r4
- ldr r1, _08050EA4 @ =gEnemyParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- ldr r0, _08050EA8 @ =gStringVar3
- mov r1, sp
- bl StringCopy10
- ldrb r0, [r5]
- muls r0, r4
- ldr r1, _08050EAC @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- ldr r0, _08050EB0 @ =gStringVar2
- mov r1, sp
- bl StringCopy10
- b _08050EF0
- .align 2, 0
-_08050E94: .4byte gUnknown_2031DAC
-_08050E98: .4byte gStringVar1
-_08050E9C: .4byte gLinkPlayers + 8
-_08050EA0: .4byte gUnknown_2031DA4
-_08050EA4: .4byte gEnemyParty
-_08050EA8: .4byte gStringVar3
-_08050EAC: .4byte gPlayerParty
-_08050EB0: .4byte gStringVar2
-_08050EB4:
- ldr r0, _08050EF8 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- lsls r4, r0, 4
- subs r4, r0
- lsls r4, 2
- ldr r0, _08050EFC @ =gIngameTrades
- adds r4, r0
- ldr r0, _08050F00 @ =gStringVar1
- adds r1, r4, 0
- adds r1, 0x2B
- bl StringCopy
- ldr r0, _08050F04 @ =gStringVar3
- adds r1, r4, 0
- bl StringCopy10
- ldr r0, _08050F08 @ =gSpecialVar_0x8005
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08050F0C @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- ldr r0, _08050F10 @ =gStringVar2
- mov r1, sp
- bl StringCopy10
-_08050EF0:
- add sp, 0x14
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08050EF8: .4byte gSpecialVar_0x8004
-_08050EFC: .4byte gIngameTrades
-_08050F00: .4byte gStringVar1
-_08050F04: .4byte gStringVar3
-_08050F08: .4byte gSpecialVar_0x8005
-_08050F0C: .4byte gPlayerParty
-_08050F10: .4byte gStringVar2
- thumb_func_end sub_8050E24
-
- thumb_func_start sub_8050F14
-sub_8050F14: @ 8050F14
- push {lr}
- ldr r0, _08050F2C @ =gUnknown_2031DAC
- ldr r0, [r0]
- movs r1, 0x84
- lsls r1, 1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _08050F30
- bl sub_805232C
- b _08050F34
- .align 2, 0
-_08050F2C: .4byte gUnknown_2031DAC
-_08050F30:
- bl sub_8050F3C
-_08050F34:
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end sub_8050F14
-
- thumb_func_start sub_8050F3C
-sub_8050F3C: @ 8050F3C
- push {r4-r7,lr}
- sub sp, 0x10
- ldr r0, _08050F60 @ =gUnknown_2031DAC
- ldr r1, [r0]
- adds r1, 0x94
- ldrh r5, [r1]
- ldr r1, _08050F64 @ =0x0000010b
- adds r7, r0, 0
- cmp r5, r1
- bls _08050F54
- bl _08052318
-_08050F54:
- lsls r0, r5, 2
- ldr r1, _08050F68 @ =_08050F6C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08050F60: .4byte gUnknown_2031DAC
-_08050F64: .4byte 0x0000010b
-_08050F68: .4byte _08050F6C
- .align 2, 0
-_08050F6C:
- .4byte _0805139C
- .4byte _08051414
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08051470
- .4byte _080514B8
- .4byte _0805152C
- .4byte _08052318
- .4byte _08051598
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _080515BC
- .4byte _080515EC
- .4byte _080515FE
- .4byte _08051620
- .4byte _08051668
- .4byte _08051698
- .4byte _080516E0
- .4byte _08051730
- .4byte _08051784
- .4byte _08051808
- .4byte _0805182C
- .4byte _08051878
- .4byte _080518C4
- .4byte _08051920
- .4byte _08051980
- .4byte _08051994
- .4byte _080519A8
- .4byte _080519BC
- .4byte _08051AE4
- .4byte _08051BB4
- .4byte _08051C3C
- .4byte _08051CB4
- .4byte _08051CC4
- .4byte _08051CE4
- .4byte _08051D34
- .4byte _08051D52
- .4byte _08051D90
- .4byte _08051DA0
- .4byte _08051E1C
- .4byte _08052318
- .4byte _08051E44
- .4byte _08051E84
- .4byte _08051EC4
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08051EE4
- .4byte _08051F0C
- .4byte _08051F28
- .4byte _08051F48
- .4byte _08051FF0
- .4byte _08052024
- .4byte _08052070
- .4byte _08052128
- .4byte _080521B4
- .4byte _08052200
- .4byte _08052210
- .4byte _08052216
- .4byte _0805223C
- .4byte _08052298
- .4byte _080522BC
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052160
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _080517B0
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052318
- .4byte _08052198
-_0805139C:
- ldr r3, _08051408 @ =gSprites
- ldr r0, [r7]
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- ldr r4, [r7]
- adds r2, r4, 0
- adds r2, 0x8E
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldr r1, _0805140C @ =0x0000ff4c
- strh r1, [r0, 0x24]
- ldrb r0, [r2]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- ldr r2, _08051410 @ =gMonFrontPicCoords
- adds r0, r4, 0
- adds r0, 0xF0
- ldrh r0, [r0]
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- strh r0, [r1, 0x26]
- adds r1, r4, 0
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- bl GetCurrentMapMusic
- ldr r1, [r7]
- adds r1, 0xF4
- strh r0, [r1]
- movs r0, 0x84
- lsls r0, 1
- bl PlayNewMapMusic
- bl _08052318
- .align 2, 0
-_08051408: .4byte gSprites
-_0805140C: .4byte 0x0000ff4c
-_08051410: .4byte gMonFrontPicCoords
-_08051414:
- ldr r5, [r7]
- adds r6, r5, 0
- adds r6, 0xE6
- movs r1, 0
- ldrsh r0, [r6, r1]
- cmp r0, 0
- ble _08051448
- ldr r2, _08051444 @ =gSprites
- adds r0, r5, 0
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x24]
- adds r1, 0x3
- strh r1, [r0, 0x24]
- ldrh r0, [r6]
- subs r0, 0x3
- strh r0, [r6]
- bl _08052318
- .align 2, 0
-_08051444: .4byte gSprites
-_08051448:
- ldr r2, _0805146C @ =gSprites
- adds r0, r5, 0
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0
- strh r1, [r0, 0x24]
- strh r1, [r6]
- adds r1, r5, 0
- adds r1, 0x94
- movs r0, 0xA
- strh r0, [r1]
- bl _08052318
- .align 2, 0
-_0805146C: .4byte gSprites
-_08051470:
- ldr r4, _080514AC @ =gStringVar4
- ldr r1, _080514B0 @ =gUnknown_841E1E9
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl sub_8054508
- ldr r4, _080514B4 @ =gUnknown_2031DAC
- ldr r0, [r4]
- adds r2, r0, 0
- adds r2, 0xF0
- ldrh r1, [r2]
- movs r0, 0xCE
- lsls r0, 1
- cmp r1, r0
- beq _0805149E
- adds r0, r1, 0
- movs r1, 0
- bl PlayCry1
-_0805149E:
- ldr r3, [r4]
- adds r1, r3, 0
- adds r1, 0x94
- movs r2, 0
- movs r0, 0xB
- bl _0805218E
- .align 2, 0
-_080514AC: .4byte gStringVar4
-_080514B0: .4byte gUnknown_841E1E9
-_080514B4: .4byte gUnknown_2031DAC
-_080514B8:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x50
- beq _080514C8
- bl _08052318
-_080514C8:
- adds r0, r1, 0
- adds r0, 0x8E
- ldrb r0, [r0]
- ldr r2, _0805151C @ =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r1, [r1, 0x5]
- lsrs r1, 4
- movs r2, 0x2
- str r2, [sp]
- movs r2, 0x1
- str r2, [sp, 0x4]
- movs r2, 0x14
- str r2, [sp, 0x8]
- ldr r2, _08051520 @ =0x000fffff
- str r2, [sp, 0xC]
- movs r2, 0x78
- movs r3, 0x20
- bl sub_804BB98
- ldr r1, [r7]
- adds r1, 0xD2
- strb r0, [r1]
- ldr r1, [r7]
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- ldr r4, _08051524 @ =gStringVar4
- ldr r1, _08051528 @ =gUnknown_841E200
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl sub_8054508
- bl _08052318
- .align 2, 0
-_0805151C: .4byte gSprites
-_08051520: .4byte 0x000fffff
-_08051524: .4byte gStringVar4
-_08051528: .4byte gUnknown_841E200
-_0805152C:
- ldr r5, _08051588 @ =gSprites
- ldr r0, [r7]
- adds r0, 0xD2
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, r5, 0
- adds r4, 0x1C
- adds r0, r4
- ldr r1, [r0]
- ldr r0, _0805158C @ =SpriteCallbackDummy
- cmp r1, r0
- beq _0805154C
- bl _08052318
-_0805154C:
- ldr r0, _08051590 @ =gUnknown_826CDE4
- movs r1, 0x78
- movs r2, 0x20
- movs r3, 0
- bl CreateSprite
- ldr r1, [r7]
- adds r1, 0xD3
- strb r0, [r1]
- ldr r2, [r7]
- adds r0, r2, 0
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, _08051594 @ =sub_8053938
- str r1, [r0]
- adds r2, 0xD2
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- bl DestroySprite
- ldr r1, [r7]
- bl _080522AC
- .align 2, 0
-_08051588: .4byte gSprites
-_0805158C: .4byte SpriteCallbackDummy
-_08051590: .4byte gUnknown_826CDE4
-_08051594: .4byte sub_8053938
-_08051598:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _080515B8 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x94
- movs r1, 0x14
- strh r1, [r0]
- bl _08052318
- .align 2, 0
-_080515B8: .4byte gUnknown_2031DAC
-_080515BC:
- ldr r0, _080515E8 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080515CC
- bl _08052318
-_080515CC:
- movs r0, 0x4
- bl sub_8050968
- movs r0, 0
- movs r1, 0xFF
- bl FillWindowPixelBuffer
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- bl _080522A8
- .align 2, 0
-_080515E8: .4byte gPaletteFade
-_080515EC:
- movs r1, 0x1
- negs r1, r1
- movs r0, 0
- str r0, [sp]
- adds r0, r1, 0
- movs r2, 0x10
- movs r3, 0
- bl _080522A4
-_080515FE:
- ldr r0, _0805161C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0805160E
- bl _08052318
-_0805160E:
- ldr r0, [r7]
- adds r0, 0x94
- movs r1, 0x17
- strh r1, [r0]
- bl _08052318
- .align 2, 0
-_0805161C: .4byte gPaletteFade
-_08051620:
- ldr r4, _0805163C @ =gUnknown_2031DAC
- ldr r0, [r4]
- adds r2, r0, 0
- adds r2, 0xEA
- ldrh r1, [r2]
- movs r0, 0x80
- lsls r0, 1
- cmp r1, r0
- bls _08051640
- adds r0, r1, 0
- subs r0, 0x34
- strh r0, [r2]
- b _0805165C
- .align 2, 0
-_0805163C: .4byte gUnknown_2031DAC
-_08051640:
- movs r0, 0x1
- bl sub_8050968
- ldr r3, [r4]
- adds r1, r3, 0
- adds r1, 0xEA
- movs r2, 0
- movs r0, 0x80
- strh r0, [r1]
- subs r1, 0x56
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- str r2, [r3, 0x64]
-_0805165C:
- ldr r0, _08051664 @ =gUnknown_2031DAC
- ldr r4, [r0]
- bl _08051EB0
- .align 2, 0
-_08051664: .4byte gUnknown_2031DAC
-_08051668:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x14
- bhi _08051678
- bl _08052318
-_08051678:
- bl sub_804FE24
- ldr r0, _08051694 @ =gUnknown_826CF30
- movs r1, 0x78
- movs r2, 0x50
- movs r3, 0
- bl CreateSprite
- ldr r1, [r7]
- adds r1, 0x91
- strb r0, [r1]
- ldr r1, [r7]
- bl _080522AC
- .align 2, 0
-_08051694: .4byte gUnknown_826CF30
-_08051698:
- ldr r2, _080516D8 @ =gSprites
- ldr r0, [r7]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- adds r0, r1, 0
- adds r0, 0x3F
- ldrb r0, [r0]
- lsls r0, 27
- cmp r0, 0
- blt _080516B8
- bl _08052318
-_080516B8:
- adds r0, r1, 0
- bl DestroySprite
- movs r1, 0xC8
- lsls r1, 3
- movs r0, 0x50
- bl SetGpuReg
- ldr r1, _080516DC @ =0x0000040c
- movs r0, 0x52
- bl SetGpuReg
- ldr r1, [r7]
- bl _080522AC
- .align 2, 0
-_080516D8: .4byte gSprites
-_080516DC: .4byte 0x0000040c
-_080516E0:
- ldr r2, [r7]
- adds r0, r2, 0
- adds r0, 0xE0
- ldrh r1, [r0]
- subs r1, 0x1
- strh r1, [r0]
- lsls r1, 16
- movs r0, 0x9E
- lsls r0, 17
- cmp r1, r0
- bne _08051700
- adds r1, r2, 0
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_08051700:
- ldr r0, [r7]
- adds r0, 0xE0
- movs r2, 0
- ldrsh r1, [r0, r2]
- movs r0, 0xA4
- lsls r0, 1
- cmp r1, r0
- beq _08051714
- bl _08052318
-_08051714:
- ldr r0, _0805172C @ =gUnknown_826CEB8
- movs r1, 0x80
- movs r2, 0x41
- movs r3, 0
- bl CreateSprite
- ldr r1, [r7]
- adds r1, 0x92
- strb r0, [r1]
- bl _08052318
- .align 2, 0
-_0805172C: .4byte gUnknown_826CEB8
-_08051730:
- ldr r0, _08051774 @ =gUnknown_826CE44
- movs r1, 0x80
- movs r2, 0x50
- movs r3, 0x3
- bl CreateSprite
- ldr r4, _08051778 @ =gUnknown_2031DAC
- ldr r1, [r4]
- adds r1, 0x90
- strb r0, [r1]
- ldr r0, _0805177C @ =gUnknown_826CE84
- movs r1, 0x80
- movs r2, 0x50
- movs r3, 0
- bl CreateSprite
- ldr r1, [r4]
- adds r1, 0x91
- strb r0, [r1]
- ldr r0, [r4]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08051780 @ =gSprites
- adds r0, r1
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r1, [r4]
- bl _080522AC
- .align 2, 0
-_08051774: .4byte gUnknown_826CE44
-_08051778: .4byte gUnknown_2031DAC
-_0805177C: .4byte gUnknown_826CE84
-_08051780: .4byte gSprites
-_08051784:
- ldr r2, [r7]
- adds r1, r2, 0
- adds r1, 0xE0
- ldrh r0, [r1]
- subs r0, 0x2
- strh r0, [r1]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA6
- bne _0805179E
- subs r1, 0x4C
- movs r0, 0xC8
- strh r0, [r1]
-_0805179E:
- ldr r1, _080517AC @ =0x00001241
- movs r0, 0
- bl SetGpuReg
- bl _08052318
- .align 2, 0
-_080517AC: .4byte 0x00001241
-_080517B0:
- ldr r2, _08051804 @ =gSprites
- ldr r4, [r7]
- adds r3, r4, 0
- adds r3, 0x90
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x22]
- subs r1, 0x2
- strh r1, [r0, 0x22]
- adds r0, r4, 0
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x22]
- subs r1, 0x2
- strh r1, [r0, 0x22]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r3, 0x22
- ldrsh r1, [r0, r3]
- movs r0, 0x8
- negs r0, r0
- cmp r1, r0
- blt _080517F6
- bl _08052318
-_080517F6:
- adds r1, r4, 0
- adds r1, 0x94
- movs r0, 0x1D
- strh r0, [r1]
- bl _08052318
- .align 2, 0
-_08051804: .4byte gSprites
-_08051808:
- movs r1, 0x1
- negs r1, r1
- movs r0, 0
- str r0, [sp]
- adds r0, r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _08051828 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x94
- movs r1, 0x1E
- strh r1, [r0]
- bl _08052318
- .align 2, 0
-_08051828: .4byte gUnknown_2031DAC
-_0805182C:
- ldr r0, _08051870 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0805183C
- bl _08052318
-_0805183C:
- ldr r0, [r7]
- adds r0, 0x90
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _08051874 @ =gSprites
- adds r0, r4
- bl DestroySprite
- ldr r0, [r7]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- movs r0, 0x2
- bl sub_8050968
- ldr r1, [r7]
- bl _080522AC
- .align 2, 0
-_08051870: .4byte gPaletteFade
-_08051874: .4byte gSprites
-_08051878:
- movs r1, 0x1
- negs r1, r1
- movs r0, 0
- str r0, [sp]
- adds r0, r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r5, _080518BC @ =gUnknown_826CE84
- adds r0, r5, 0
- movs r1, 0x6F
- movs r2, 0xAA
- movs r3, 0
- bl CreateSprite
- ldr r4, _080518C0 @ =gUnknown_2031DAC
- ldr r1, [r4]
- adds r1, 0x90
- strb r0, [r1]
- movs r2, 0xA
- negs r2, r2
- adds r0, r5, 0
- movs r1, 0x81
- movs r3, 0
- bl CreateSprite
- ldr r1, [r4]
- adds r1, 0x91
- strb r0, [r1]
- ldr r1, [r4]
- bl _080522AC
- .align 2, 0
-_080518BC: .4byte gUnknown_826CE84
-_080518C0: .4byte gUnknown_2031DAC
-_080518C4:
- ldr r0, _08051914 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080518E2
- movs r0, 0x28
- bl PlaySE
- ldr r0, _08051918 @ =gUnknown_2031DAC
- ldr r1, [r0]
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_080518E2:
- ldr r3, _0805191C @ =gSprites
- ldr r0, _08051918 @ =gUnknown_2031DAC
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x90
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0, 0x26]
- subs r1, 0x3
- strh r1, [r0, 0x26]
- adds r2, 0x91
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0, 0x26]
- adds r1, 0x3
- strh r1, [r0, 0x26]
- bl _08052318
- .align 2, 0
-_08051914: .4byte gPaletteFade
-_08051918: .4byte gUnknown_2031DAC
-_0805191C: .4byte gSprites
-_08051920:
- ldr r5, _0805197C @ =gSprites
- ldr r4, [r7]
- adds r2, r4, 0
- adds r2, 0x90
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrh r1, [r0, 0x26]
- subs r1, 0x3
- strh r1, [r0, 0x26]
- adds r6, r4, 0
- adds r6, 0x91
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrh r1, [r0, 0x26]
- adds r1, 0x3
- strh r1, [r0, 0x26]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r3, r0, r5
- movs r0, 0x26
- ldrsh r1, [r3, r0]
- movs r0, 0x5A
- negs r0, r0
- cmp r1, r0
- ble _08051966
- bl _08052318
-_08051966:
- movs r2, 0x1
- strh r2, [r3, 0x30]
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x30]
- adds r1, r4, 0
- bl _080522AC
- .align 2, 0
-_0805197C: .4byte gSprites
-_08051980:
- ldr r2, _08051990 @ =0x0000ffff
- movs r0, 0x1
- movs r1, 0x10
- bl BlendPalettes
- bl _080522A8
- .align 2, 0
-_08051990: .4byte 0x0000ffff
-_08051994:
- ldr r2, _080519A4 @ =0x0000ffff
- movs r0, 0x1
- movs r1, 0
- bl BlendPalettes
- bl _080522A8
- .align 2, 0
-_080519A4: .4byte 0x0000ffff
-_080519A8:
- ldr r2, _080519B8 @ =0x0000ffff
- movs r0, 0x1
- movs r1, 0x10
- bl BlendPalettes
- bl _080522A8
- .align 2, 0
-_080519B8: .4byte 0x0000ffff
-_080519BC:
- ldr r5, _08051A28 @ =gUnknown_2031DAC
- ldr r0, [r5]
- adds r0, 0xF0
- ldrh r0, [r0]
- bl IsPokeSpriteNotFlipped
- lsls r0, 24
- cmp r0, 0
- bne _08051A34
- ldr r4, _08051A2C @ =gSprites
- ldr r2, [r5]
- adds r2, 0x8E
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0
- adds r1, 0x10
- adds r0, r1
- ldr r1, _08051A30 @ =gUnknown_826CF88
- str r1, [r0]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0, 0x1]
- movs r2, 0x3
- orrs r1, r2
- strb r1, [r0, 0x1]
- ldr r0, [r5]
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0
- movs r2, 0x3
- movs r3, 0x3
- bl CalcCenterToCornerVec
- ldr r0, [r5]
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0
- bl StartSpriteAffineAnim
- b _08051A4A
- .align 2, 0
-_08051A28: .4byte gUnknown_2031DAC
-_08051A2C: .4byte gSprites
-_08051A30: .4byte gUnknown_826CF88
-_08051A34:
- ldr r0, [r5]
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08051AD8 @ =gSprites
- adds r0, r1
- movs r1, 0
- bl StartSpriteAffineAnim
-_08051A4A:
- ldr r5, _08051ADC @ =gUnknown_2031DAC
- ldr r0, [r5]
- adds r0, 0x8F
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _08051AD8 @ =gSprites
- adds r0, r4
- movs r1, 0
- bl StartSpriteAffineAnim
- ldr r2, [r5]
- adds r3, r2, 0
- adds r3, 0x8E
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x3C
- strh r1, [r0, 0x20]
- adds r2, 0x8F
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0xB4
- strh r1, [r0, 0x20]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0xC0
- strh r1, [r0, 0x22]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, _08051AE0 @ =0x0000ffe0
- strh r1, [r0, 0x22]
- ldrb r0, [r3]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- ldr r0, [r5]
- adds r0, 0x8F
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- ldr r1, [r5]
- bl _080522AC
- .align 2, 0
-_08051AD8: .4byte gSprites
-_08051ADC: .4byte gUnknown_2031DAC
-_08051AE0: .4byte 0x0000ffe0
-_08051AE4:
- ldr r4, _08051BAC @ =gSprites
- ldr r2, [r7]
- adds r3, r2, 0
- adds r3, 0x8E
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x26]
- subs r1, 0x3
- movs r5, 0
- strh r1, [r0, 0x26]
- adds r2, 0x8F
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x26]
- adds r1, 0x3
- strh r1, [r0, 0x26]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r0, [r0, 0x26]
- adds r0, 0xA3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x2
- bhi _08051B2C
- movs r0, 0x27
- bl PlaySE
-_08051B2C:
- ldr r2, [r7]
- adds r3, r2, 0
- adds r3, 0x8E
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r6, 0x26
- ldrsh r1, [r0, r6]
- movs r0, 0xDE
- negs r0, r0
- cmp r1, r0
- blt _08051B4C
- bl _08052318
-_08051B4C:
- adds r0, r2, 0
- adds r0, 0x90
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r5, [r0, 0x30]
- adds r0, r2, 0
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r5, [r0, 0x30]
- adds r1, r2, 0
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldr r0, [r7]
- adds r0, 0x8F
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- orrs r1, r2
- strb r1, [r0]
- ldr r2, _08051BB0 @ =0x0000ffff
- movs r0, 0x1
- movs r1, 0
- bl BlendPalettes
- b _08052318
- .align 2, 0
-_08051BAC: .4byte gSprites
-_08051BB0: .4byte 0x0000ffff
-_08051BB4:
- ldr r4, _08051C38 @ =gSprites
- ldr r2, [r7]
- adds r3, r2, 0
- adds r3, 0x90
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x26]
- subs r1, 0x3
- strh r1, [r0, 0x26]
- adds r2, 0x91
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x26]
- adds r1, 0x3
- strh r1, [r0, 0x26]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r2, 0x26
- ldrsh r1, [r0, r2]
- movs r0, 0xDE
- negs r0, r0
- cmp r1, r0
- ble _08051BF6
- b _08052318
-_08051BF6:
- movs r1, 0x1
- negs r1, r1
- movs r0, 0
- str r0, [sp]
- adds r0, r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, [r7]
- adds r2, r1, 0
- adds r2, 0x94
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- adds r1, 0x90
- ldrb r1, [r1]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- ldr r0, [r7]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- b _08052318
- .align 2, 0
-_08051C38: .4byte gSprites
-_08051C3C:
- ldr r0, _08051CA4 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08051C4A
- b _08052318
-_08051C4A:
- ldr r1, [r7]
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- movs r0, 0x1
- bl sub_8050968
- ldr r0, [r7]
- adds r0, 0xE0
- movs r1, 0xA6
- strh r1, [r0]
- ldr r0, _08051CA8 @ =gUnknown_826CE44
- movs r4, 0x14
- negs r4, r4
- movs r1, 0x80
- adds r2, r4, 0
- movs r3, 0x3
- bl CreateSprite
- ldr r1, [r7]
- adds r1, 0x90
- strb r0, [r1]
- ldr r0, _08051CAC @ =gUnknown_826CE84
- movs r1, 0x80
- adds r2, r4, 0
- movs r3, 0
- bl CreateSprite
- ldr r1, [r7]
- adds r1, 0x91
- strb r0, [r1]
- ldr r0, [r7]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08051CB0 @ =gSprites
- adds r0, r1
- movs r1, 0x1
- bl StartSpriteAnim
- b _08052318
- .align 2, 0
-_08051CA4: .4byte gPaletteFade
-_08051CA8: .4byte gUnknown_826CE44
-_08051CAC: .4byte gUnknown_826CE84
-_08051CB0: .4byte gSprites
-_08051CB4:
- movs r1, 0x1
- negs r1, r1
- movs r0, 0
- str r0, [sp]
- adds r0, r1, 0
- movs r2, 0x10
- movs r3, 0
- b _080522A4
-_08051CC4:
- movs r1, 0x92
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- ldr r0, _08051CE0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08051CDC
- b _08052318
-_08051CDC:
- b _080522A8
- .align 2, 0
-_08051CE0: .4byte gPaletteFade
-_08051CE4:
- ldr r2, _08051D30 @ =gSprites
- ldr r4, [r7]
- adds r3, r4, 0
- adds r3, 0x90
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x26]
- adds r1, 0x3
- strh r1, [r0, 0x26]
- adds r0, r4, 0
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x26]
- adds r1, 0x3
- strh r1, [r0, 0x26]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r3, 0x26
- ldrsh r1, [r0, r3]
- movs r6, 0x22
- ldrsh r0, [r0, r6]
- adds r1, r0
- cmp r1, 0x40
- beq _08051D2A
- b _08052318
-_08051D2A:
- adds r1, r4, 0
- b _080522AC
- .align 2, 0
-_08051D30: .4byte gSprites
-_08051D34:
- ldr r1, [r7]
- adds r5, r1, 0
- adds r5, 0xE0
- ldrh r0, [r5]
- adds r0, 0x2
- strh r0, [r5]
- lsls r0, 16
- asrs r0, 16
- movs r6, 0x9E
- lsls r6, 1
- cmp r0, r6
- bgt _08051D4E
- b _08052318
-_08051D4E:
- strh r6, [r5]
- b _080522AC
-_08051D52:
- ldr r0, [r7]
- adds r0, 0x90
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _08051D8C @ =gSprites
- adds r0, r4
- bl DestroySprite
- ldr r0, [r7]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- ldr r3, [r7]
- adds r2, r3, 0
- adds r2, 0x94
- ldrh r0, [r2]
- adds r0, 0x1
- movs r1, 0
- strh r0, [r2]
- str r1, [r3, 0x64]
- b _08052318
- .align 2, 0
-_08051D8C: .4byte gSprites
-_08051D90:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0xA
- beq _08051D9E
- b _08052318
-_08051D9E:
- b _080522AC
-_08051DA0:
- ldr r1, [r7]
- adds r2, r1, 0
- adds r2, 0xE0
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- lsls r0, 16
- asrs r0, 16
- movs r3, 0xAE
- lsls r3, 1
- cmp r0, r3
- ble _08051DC2
- strh r3, [r2]
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_08051DC2:
- ldr r2, [r7]
- adds r0, r2, 0
- adds r0, 0xE0
- movs r3, 0
- ldrsh r1, [r0, r3]
- movs r0, 0xA4
- lsls r0, 1
- cmp r1, r0
- beq _08051DD6
- b _08052318
-_08051DD6:
- movs r6, 0x84
- lsls r6, 1
- adds r0, r2, r6
- ldrb r0, [r0]
- cmp r0, 0
- bne _08051DE4
- b _08052318
-_08051DE4:
- ldr r0, _08051E10 @ =gUnknown_826CEB8
- movs r1, 0x80
- movs r2, 0x41
- movs r3, 0
- bl CreateSprite
- ldr r1, [r7]
- adds r1, 0x92
- strb r0, [r1]
- ldr r2, _08051E14 @ =gSprites
- ldr r0, [r7]
- adds r0, 0x92
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, _08051E18 @ =sub_804FDDC
- str r1, [r0]
- b _08052318
- .align 2, 0
-_08051E10: .4byte gUnknown_826CEB8
-_08051E14: .4byte gSprites
-_08051E18: .4byte sub_804FDDC
-_08051E1C:
- ldr r0, _08051E3C @ =gUnknown_826CF30
- movs r1, 0x78
- movs r2, 0x50
- movs r3, 0
- bl CreateSprite
- ldr r2, _08051E40 @ =gUnknown_2031DAC
- ldr r1, [r2]
- adds r1, 0x91
- strb r0, [r1]
- ldr r0, [r2]
- adds r0, 0x94
- movs r1, 0x32
- strh r1, [r0]
- b _08052318
- .align 2, 0
-_08051E3C: .4byte gUnknown_826CF30
-_08051E40: .4byte gUnknown_2031DAC
-_08051E44:
- ldr r2, _08051E80 @ =gSprites
- ldr r0, [r7]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- adds r0, r1, 0
- adds r0, 0x3F
- ldrb r0, [r0]
- lsls r0, 27
- cmp r0, 0
- blt _08051E62
- b _08052318
-_08051E62:
- adds r0, r1, 0
- bl DestroySprite
- movs r0, 0x6
- bl sub_8050968
- ldr r1, [r7]
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- movs r0, 0x98
- bl PlaySE
- b _08052318
- .align 2, 0
-_08051E80: .4byte gSprites
-_08051E84:
- ldr r1, [r7]
- adds r2, r1, 0
- adds r2, 0xEA
- ldrh r3, [r2]
- ldr r0, _08051E9C @ =0x000003ff
- cmp r3, r0
- bhi _08051EA0
- adds r0, r3, 0
- adds r0, 0x34
- strh r0, [r2]
- b _08051EAE
- .align 2, 0
-_08051E9C: .4byte 0x000003ff
-_08051EA0:
- movs r0, 0x80
- lsls r0, 3
- strh r0, [r2]
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_08051EAE:
- ldr r4, [r7]
-_08051EB0:
- adds r0, r4, 0
- adds r0, 0xEA
- ldrh r1, [r0]
- movs r0, 0x80
- lsls r0, 8
- bl __divsi3
- adds r4, 0xE8
- strh r0, [r4]
- b _08052318
-_08051EC4:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _08051EE0 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x94
- movs r1, 0x3C
- strh r1, [r0]
- b _08052318
- .align 2, 0
-_08051EE0: .4byte gUnknown_2031DAC
-_08051EE4:
- ldr r4, _08051F08 @ =gPaletteFade
- ldrb r1, [r4, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08051EF2
- b _08052318
-_08051EF2:
- movs r0, 0x5
- bl sub_8050968
- movs r0, 0x7
- bl sub_8050968
- ldrb r0, [r4, 0x8]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r4, 0x8]
- b _080522A8
- .align 2, 0
-_08051F08: .4byte gPaletteFade
-_08051F0C:
- ldr r2, _08051F24 @ =gPaletteFade
- ldrb r1, [r2, 0x8]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x8]
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- b _080522A4
- .align 2, 0
-_08051F24: .4byte gPaletteFade
-_08051F28:
- movs r1, 0xA2
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- ldr r0, _08051F44 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08051F40
- b _08052318
-_08051F40:
- b _080522A8
- .align 2, 0
-_08051F44: .4byte gPaletteFade
-_08051F48:
- ldr r0, _08051FDC @ =gUnknown_826CDE4
- movs r2, 0x8
- negs r2, r2
- movs r1, 0x78
- movs r3, 0
- bl CreateSprite
- ldr r5, _08051FE0 @ =gUnknown_2031DAC
- ldr r1, [r5]
- adds r1, 0xD3
- movs r6, 0
- strb r0, [r1]
- ldr r4, _08051FE4 @ =gSprites
- ldr r2, [r5]
- adds r2, 0xD3
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x4A
- strh r1, [r0, 0x34]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, _08051FE8 @ =sub_8053A0C
- str r1, [r0]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r0, [r5]
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x2
- bl StartSpriteAffineAnim
- ldr r0, [r5]
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0, 0x5]
- lsrs r1, 4
- adds r1, 0x10
- movs r0, 0x1
- lsls r0, r1
- ldr r2, _08051FEC @ =0x0000ffff
- movs r1, 0x10
- bl BlendPalettes
- ldr r2, [r5]
- adds r1, r2, 0
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- str r6, [r2, 0x64]
- b _08052318
- .align 2, 0
-_08051FDC: .4byte gUnknown_826CDE4
-_08051FE0: .4byte gUnknown_2031DAC
-_08051FE4: .4byte gSprites
-_08051FE8: .4byte sub_8053A0C
-_08051FEC: .4byte 0x0000ffff
-_08051FF0:
- ldr r2, _0805201C @ =gSprites
- ldr r0, [r7]
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x5]
- lsrs r1, 4
- adds r1, 0x10
- movs r0, 0x1
- lsls r0, r1
- ldr r1, _08052020 @ =0x0000ffff
- str r1, [sp]
- movs r1, 0x1
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r1, [r7]
- b _080522AC
- .align 2, 0
-_0805201C: .4byte gSprites
-_08052020: .4byte 0x0000ffff
-_08052024:
- ldr r2, _08052060 @ =gSprites
- ldr r3, [r7]
- adds r0, r3, 0
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, [r0]
- ldr r0, _08052064 @ =SpriteCallbackDummy
- cmp r1, r0
- beq _08052042
- b _08052318
-_08052042:
- adds r0, r3, 0
- adds r0, 0xF2
- ldrh r2, [r0]
- lsls r0, r2, 3
- ldr r1, _08052068 @ =gMonFrontPicTable
- adds r0, r1
- ldr r1, _0805206C @ =gMonSpritesGfxPtr
- ldr r1, [r1]
- ldr r1, [r1, 0x10]
- ldr r3, [r3, 0x6C]
- bl HandleLoadSpecialPokePic
- ldr r1, [r7]
- b _080522AC
- .align 2, 0
-_08052060: .4byte gSprites
-_08052064: .4byte SpriteCallbackDummy
-_08052068: .4byte gMonFrontPicTable
-_0805206C: .4byte gMonSpritesGfxPtr
-_08052070:
- ldr r4, _0805211C @ =gSprites
- ldr r2, [r7]
- adds r6, r2, 0
- adds r6, 0x8F
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r5, 0
- movs r1, 0x78
- strh r1, [r0, 0x20]
- ldrb r0, [r6]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldr r3, _08052120 @ =gMonFrontPicCoords
- adds r2, 0xF2
- ldrh r0, [r2]
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x1]
- adds r0, 0x3C
- strh r0, [r1, 0x22]
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r5, [r0, 0x24]
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r5, [r0, 0x26]
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0
- bl StartSpriteAnim
- ldr r0, [r7]
- adds r0, 0x8F
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r1, [r1, 0x5]
- lsrs r1, 4
- movs r2, 0x2
- str r2, [sp]
- movs r2, 0x1
- str r2, [sp, 0x4]
- movs r2, 0x14
- str r2, [sp, 0x8]
- ldr r2, _08052124 @ =0x000fffff
- str r2, [sp, 0xC]
- movs r2, 0x78
- movs r3, 0x54
- bl CreatePokeballSpriteToReleaseMon
- ldr r0, [r7]
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl FreeSpriteOamMatrix
- ldr r0, [r7]
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- ldr r1, [r7]
- b _080522AC
- .align 2, 0
-_0805211C: .4byte gSprites
-_08052120: .4byte gMonFrontPicCoords
-_08052124: .4byte 0x000fffff
-_08052128:
- movs r1, 0xAA
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- ldr r4, _08052154 @ =gStringVar4
- ldr r1, _08052158 @ =gUnknown_841E20D
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl sub_8054508
- ldr r0, _0805215C @ =gUnknown_2031DAC
- ldr r3, [r0]
- adds r1, r3, 0
- adds r1, 0x94
- movs r2, 0
- movs r0, 0xA7
- b _0805218E
- .align 2, 0
-_08052154: .4byte gStringVar4
-_08052158: .4byte gUnknown_841E20D
-_0805215C: .4byte gUnknown_2031DAC
-_08052160:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x3C
- bhi _0805216E
- b _08052318
-_0805216E:
- adds r2, r1, 0
- adds r2, 0xF2
- ldrh r1, [r2]
- movs r0, 0xCE
- lsls r0, 1
- cmp r1, r0
- beq _08052184
- adds r0, r1, 0
- movs r1, 0
- bl PlayCry1
-_08052184:
- ldr r3, [r7]
- adds r1, r3, 0
- adds r1, 0x94
- movs r2, 0
- ldr r0, _08052194 @ =0x0000010b
-_0805218E:
- strh r0, [r1]
- str r2, [r3, 0x64]
- b _08052318
- .align 2, 0
-_08052194: .4byte 0x0000010b
-_08052198:
- bl IsCryFinished
- lsls r0, 24
- cmp r0, 0
- bne _080521A4
- b _08052318
-_080521A4:
- ldr r0, _080521B0 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x94
- movs r1, 0x44
- strh r1, [r0]
- b _08052318
- .align 2, 0
-_080521B0: .4byte gUnknown_2031DAC
-_080521B4:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0xA
- bne _080521C6
- ldr r0, _080521F4 @ =0x00000103
- bl PlayFanfare
-_080521C6:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- cmp r0, 0xFA
- beq _080521D0
- b _08052318
-_080521D0:
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- movs r5, 0
- strh r0, [r1]
- ldr r4, _080521F8 @ =gStringVar4
- ldr r1, _080521FC @ =gUnknown_841E21E
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl sub_8054508
- ldr r0, [r7]
- str r5, [r0, 0x64]
- b _08052318
- .align 2, 0
-_080521F4: .4byte 0x00000103
-_080521F8: .4byte gStringVar4
-_080521FC: .4byte gUnknown_841E21E
-_08052200:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x3C
- beq _0805220E
- b _08052318
-_0805220E:
- b _080522AC
-_08052210:
- bl sub_80544AC
- b _080522A8
-_08052216:
- ldr r2, [r7]
- adds r0, r2, 0
- adds r0, 0xEE
- ldrb r0, [r0]
- cmp r0, 0
- beq _08052226
- movs r0, 0x1
- b _0805231A
-_08052226:
- ldr r0, _08052238 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08052318
- adds r1, r2, 0
- b _080522AC
- .align 2, 0
-_08052238: .4byte gMain
-_0805223C:
- ldr r0, _08052280 @ =gSpecialVar_0x8005
- ldrb r0, [r0]
- movs r1, 0
- bl sub_805080C
- ldr r1, _08052284 @ =gCB2_AfterEvolution
- ldr r0, _08052288 @ =sub_8050948
- str r0, [r1]
- ldr r7, _0805228C @ =gUnknown_2031DA4
- ldrb r0, [r7]
- movs r6, 0x64
- muls r0, r6
- ldr r5, _08052290 @ =gPlayerParty
- adds r0, r5
- movs r1, 0x1
- movs r2, 0
- bl GetEvolutionTargetSpecies
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0
- beq _080522A8
- ldrb r3, [r7]
- adds r0, r3, 0
- muls r0, r6
- adds r0, r5
- ldr r1, _08052294 @ =gUnknown_2031DAC
- ldr r1, [r1]
- adds r1, 0x8F
- ldrb r2, [r1]
- adds r1, r4, 0
- bl TradeEvolutionScene
- b _080522A8
- .align 2, 0
-_08052280: .4byte gSpecialVar_0x8005
-_08052284: .4byte gCB2_AfterEvolution
-_08052288: .4byte sub_8050948
-_0805228C: .4byte gUnknown_2031DA4
-_08052290: .4byte gPlayerParty
-_08052294: .4byte gUnknown_2031DAC
-_08052298:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
-_080522A4:
- bl BeginNormalPaletteFade
-_080522A8:
- ldr r0, _080522B8 @ =gUnknown_2031DAC
- ldr r1, [r0]
-_080522AC:
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _08052318
- .align 2, 0
-_080522B8: .4byte gUnknown_2031DAC
-_080522BC:
- ldr r0, _08052324 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _08052318
- ldr r0, [r7]
- adds r0, 0xF4
- ldrh r0, [r0]
- bl PlayNewMapMusic
- ldr r0, [r7]
- cmp r0, 0
- beq _0805230A
- bl FreeAllWindowBuffers
- movs r0, 0x3
- bl GetBgTilemapBuffer
- bl Free
- movs r0, 0x1
- bl GetBgTilemapBuffer
- bl Free
- movs r0, 0
- bl GetBgTilemapBuffer
- bl Free
- bl FreeMonSpritesGfx
- ldr r0, [r7]
- bl Free
- str r4, [r7]
-_0805230A:
- ldr r0, _08052328 @ =CB2_ReturnToField
- bl SetMainCallback2
- bl sub_8053AE4
- bl HelpSystem_Enable
-_08052318:
- movs r0, 0
-_0805231A:
- add sp, 0x10
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_08052324: .4byte gPaletteFade
-_08052328: .4byte CB2_ReturnToField
- thumb_func_end sub_8050F3C
-
- thumb_func_start sub_805232C
-sub_805232C: @ 805232C
- push {r4-r7,lr}
- sub sp, 0x10
- ldr r0, _08052350 @ =gUnknown_2031DAC
- ldr r1, [r0]
- adds r1, 0x94
- ldrh r5, [r1]
- ldr r1, _08052354 @ =0x0000010b
- adds r7, r0, 0
- cmp r5, r1
- bls _08052344
- bl _08053774
-_08052344:
- lsls r0, r5, 2
- ldr r1, _08052358 @ =_0805235C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08052350: .4byte gUnknown_2031DAC
-_08052354: .4byte 0x0000010b
-_08052358: .4byte _0805235C
- .align 2, 0
-_0805235C:
- .4byte _0805278C
- .4byte _08052804
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08052860
- .4byte _080528A8
- .4byte _0805291C
- .4byte _08053774
- .4byte _08052988
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _080529AC
- .4byte _080529DC
- .4byte _080529EE
- .4byte _08052A10
- .4byte _08053774
- .4byte _08053774
- .4byte _08052B08
- .4byte _08052B28
- .4byte _08052B94
- .4byte _08052C18
- .4byte _08052C3C
- .4byte _08052C88
- .4byte _08052CD4
- .4byte _08052D30
- .4byte _08052D9C
- .4byte _08052DB0
- .4byte _08052DC4
- .4byte _08052DD8
- .4byte _08052F00
- .4byte _08052FD0
- .4byte _08053058
- .4byte _080530F8
- .4byte _08053108
- .4byte _08053128
- .4byte _08053774
- .4byte _08053774
- .4byte _0805324C
- .4byte _0805325C
- .4byte _0805327A
- .4byte _08053774
- .4byte _080532A0
- .4byte _080532E0
- .4byte _08053320
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053340
- .4byte _08053368
- .4byte _08053384
- .4byte _080533A4
- .4byte _0805344C
- .4byte _08053480
- .4byte _080534CC
- .4byte _08053584
- .4byte _08053610
- .4byte _0805365C
- .4byte _0805366C
- .4byte _08053672
- .4byte _08053698
- .4byte _080536F4
- .4byte _08053718
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08052A58
- .4byte _08052A8C
- .4byte _08052AE0
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053180
- .4byte _080531E8
- .4byte _08053224
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _080535BC
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08052BC0
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _08053774
- .4byte _080535F4
-_0805278C:
- ldr r3, _080527F8 @ =gSprites
- ldr r0, [r7]
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
- strb r1, [r0]
- ldr r4, [r7]
- adds r2, r4, 0
- adds r2, 0x8E
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldr r1, _080527FC @ =0x0000ff4c
- strh r1, [r0, 0x24]
- ldrb r0, [r2]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r3
- ldr r2, _08052800 @ =gMonFrontPicCoords
- adds r0, r4, 0
- adds r0, 0xF0
- ldrh r0, [r0]
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x1]
- strh r0, [r1, 0x26]
- adds r1, r4, 0
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- bl GetCurrentMapMusic
- ldr r1, [r7]
- adds r1, 0xF4
- strh r0, [r1]
- movs r0, 0x84
- lsls r0, 1
- bl PlayNewMapMusic
- bl _08053774
- .align 2, 0
-_080527F8: .4byte gSprites
-_080527FC: .4byte 0x0000ff4c
-_08052800: .4byte gMonFrontPicCoords
-_08052804:
- ldr r5, [r7]
- adds r6, r5, 0
- adds r6, 0xE6
- movs r1, 0
- ldrsh r0, [r6, r1]
- cmp r0, 0
- ble _08052838
- ldr r2, _08052834 @ =gSprites
- adds r0, r5, 0
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x24]
- adds r1, 0x3
- strh r1, [r0, 0x24]
- ldrh r0, [r6]
- subs r0, 0x3
- strh r0, [r6]
- bl _08053774
- .align 2, 0
-_08052834: .4byte gSprites
-_08052838:
- ldr r2, _0805285C @ =gSprites
- adds r0, r5, 0
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0
- strh r1, [r0, 0x24]
- strh r1, [r6]
- adds r1, r5, 0
- adds r1, 0x94
- movs r0, 0xA
- strh r0, [r1]
- bl _08053774
- .align 2, 0
-_0805285C: .4byte gSprites
-_08052860:
- ldr r4, _0805289C @ =gStringVar4
- ldr r1, _080528A0 @ =gUnknown_841E1E9
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl sub_8054508
- ldr r4, _080528A4 @ =gUnknown_2031DAC
- ldr r0, [r4]
- adds r2, r0, 0
- adds r2, 0xF0
- ldrh r1, [r2]
- movs r0, 0xCE
- lsls r0, 1
- cmp r1, r0
- beq _0805288E
- adds r0, r1, 0
- movs r1, 0
- bl PlayCry1
-_0805288E:
- ldr r3, [r4]
- adds r1, r3, 0
- adds r1, 0x94
- movs r2, 0
- movs r0, 0xB
- bl _080535EA
- .align 2, 0
-_0805289C: .4byte gStringVar4
-_080528A0: .4byte gUnknown_841E1E9
-_080528A4: .4byte gUnknown_2031DAC
-_080528A8:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x50
- beq _080528B8
- bl _08053774
-_080528B8:
- adds r0, r1, 0
- adds r0, 0x8E
- ldrb r0, [r0]
- ldr r2, _0805290C @ =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r1, [r1, 0x5]
- lsrs r1, 4
- movs r2, 0x2
- str r2, [sp]
- movs r2, 0x1
- str r2, [sp, 0x4]
- movs r2, 0x14
- str r2, [sp, 0x8]
- ldr r2, _08052910 @ =0x000fffff
- str r2, [sp, 0xC]
- movs r2, 0x78
- movs r3, 0x20
- bl sub_804BB98
- ldr r1, [r7]
- adds r1, 0xD2
- strb r0, [r1]
- ldr r1, [r7]
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- ldr r4, _08052914 @ =gStringVar4
- ldr r1, _08052918 @ =gUnknown_841E200
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl sub_8054508
- bl _08053774
- .align 2, 0
-_0805290C: .4byte gSprites
-_08052910: .4byte 0x000fffff
-_08052914: .4byte gStringVar4
-_08052918: .4byte gUnknown_841E200
-_0805291C:
- ldr r5, _08052978 @ =gSprites
- ldr r0, [r7]
- adds r0, 0xD2
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r4, r5, 0
- adds r4, 0x1C
- adds r0, r4
- ldr r1, [r0]
- ldr r0, _0805297C @ =SpriteCallbackDummy
- cmp r1, r0
- beq _0805293C
- bl _08053774
-_0805293C:
- ldr r0, _08052980 @ =gUnknown_826CDE4
- movs r1, 0x78
- movs r2, 0x20
- movs r3, 0
- bl CreateSprite
- ldr r1, [r7]
- adds r1, 0xD3
- strb r0, [r1]
- ldr r2, [r7]
- adds r0, r2, 0
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, _08052984 @ =sub_8053938
- str r1, [r0]
- adds r2, 0xD2
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- bl DestroySprite
- ldr r1, [r7]
- bl _08053708
- .align 2, 0
-_08052978: .4byte gSprites
-_0805297C: .4byte SpriteCallbackDummy
-_08052980: .4byte gUnknown_826CDE4
-_08052984: .4byte sub_8053938
-_08052988:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _080529A8 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x94
- movs r1, 0x14
- strh r1, [r0]
- bl _08053774
- .align 2, 0
-_080529A8: .4byte gUnknown_2031DAC
-_080529AC:
- ldr r0, _080529D8 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080529BC
- bl _08053774
-_080529BC:
- movs r0, 0x4
- bl sub_8050968
- movs r0, 0
- movs r1, 0xFF
- bl FillWindowPixelBuffer
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- bl _08053704
- .align 2, 0
-_080529D8: .4byte gPaletteFade
-_080529DC:
- movs r1, 0x1
- negs r1, r1
- movs r0, 0
- str r0, [sp]
- adds r0, r1, 0
- movs r2, 0x10
- movs r3, 0
- bl _08053700
-_080529EE:
- ldr r0, _08052A0C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080529FE
- bl _08053774
-_080529FE:
- ldr r0, [r7]
- adds r0, 0x94
- movs r1, 0x17
- strh r1, [r0]
- bl _08053774
- .align 2, 0
-_08052A0C: .4byte gPaletteFade
-_08052A10:
- ldr r4, _08052A2C @ =gUnknown_2031DAC
- ldr r0, [r4]
- adds r2, r0, 0
- adds r2, 0xEA
- ldrh r1, [r2]
- movs r0, 0x80
- lsls r0, 1
- cmp r1, r0
- bls _08052A30
- adds r0, r1, 0
- subs r0, 0x34
- strh r0, [r2]
- b _08052A4A
- .align 2, 0
-_08052A2C: .4byte gUnknown_2031DAC
-_08052A30:
- movs r0, 0x1
- bl sub_8050968
- ldr r3, [r4]
- adds r1, r3, 0
- adds r1, 0xEA
- movs r2, 0
- movs r0, 0x80
- strh r0, [r1]
- subs r1, 0x56
- movs r0, 0x7C
- strh r0, [r1]
- str r2, [r3, 0x64]
-_08052A4A:
- ldr r0, _08052A54 @ =gUnknown_2031DAC
- ldr r4, [r0]
- bl _0805330C
- .align 2, 0
-_08052A54: .4byte gUnknown_2031DAC
-_08052A58:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x14
- bhi _08052A68
- bl _08053774
-_08052A68:
- movs r0, 0x3
- bl sub_8050968
- ldr r0, _08052A88 @ =gUnknown_826CF48
- movs r1, 0x78
- movs r2, 0x50
- movs r3, 0
- bl CreateSprite
- ldr r1, [r7]
- adds r1, 0x91
- strb r0, [r1]
- ldr r1, [r7]
- bl _08053708
- .align 2, 0
-_08052A88: .4byte gUnknown_826CF48
-_08052A8C:
- ldr r2, _08052AD4 @ =gSprites
- ldr r0, [r7]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- adds r0, r1, 0
- adds r0, 0x3F
- ldrb r0, [r0]
- lsls r0, 27
- cmp r0, 0
- blt _08052AAC
- bl _08053774
-_08052AAC:
- adds r0, r1, 0
- bl DestroySprite
- ldr r1, _08052AD8 @ =0x00000452
- movs r0, 0x50
- bl SetGpuReg
- movs r1, 0x82
- lsls r1, 3
- movs r0, 0x52
- bl SetGpuReg
- ldr r0, _08052ADC @ =c3_08054588
- movs r1, 0x5
- bl CreateTask
- ldr r1, [r7]
- bl _08053708
- .align 2, 0
-_08052AD4: .4byte gSprites
-_08052AD8: .4byte 0x00000452
-_08052ADC: .4byte c3_08054588
-_08052AE0:
- ldr r0, _08052B00 @ =c3_08054588
- bl FuncIsActiveTask
- lsls r0, 24
- cmp r0, 0
- beq _08052AF0
- bl _08053774
-_08052AF0:
- ldr r0, _08052B04 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x94
- movs r1, 0x1A
- strh r1, [r0]
- bl _08053774
- .align 2, 0
-_08052B00: .4byte c3_08054588
-_08052B04: .4byte gUnknown_2031DAC
-_08052B08:
- ldr r2, [r7]
- adds r0, r2, 0
- adds r0, 0xE0
- ldrh r1, [r0]
- subs r1, 0x1
- strh r1, [r0]
- lsls r1, 16
- movs r0, 0x9E
- lsls r0, 17
- cmp r1, r0
- beq _08052B22
- bl _08053774
-_08052B22:
- adds r1, r2, 0
- bl _08053708
-_08052B28:
- ldr r0, _08052B80 @ =gUnknown_826CE44
- movs r1, 0x78
- movs r2, 0x50
- movs r3, 0x3
- bl CreateSprite
- ldr r4, _08052B84 @ =gUnknown_2031DAC
- ldr r1, [r4]
- adds r1, 0x90
- strb r0, [r1]
- ldr r5, _08052B88 @ =gSprites
- ldr r0, [r4]
- adds r0, 0x90
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r5, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, _08052B8C @ =sub_804FD48
- str r1, [r0]
- ldr r0, _08052B90 @ =gUnknown_826CE84
- movs r1, 0x78
- movs r2, 0x50
- movs r3, 0
- bl CreateSprite
- ldr r1, [r4]
- adds r1, 0x91
- strb r0, [r1]
- ldr r0, [r4]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r1, [r4]
- bl _08053708
- .align 2, 0
-_08052B80: .4byte gUnknown_826CE44
-_08052B84: .4byte gUnknown_2031DAC
-_08052B88: .4byte gSprites
-_08052B8C: .4byte sub_804FD48
-_08052B90: .4byte gUnknown_826CE84
-_08052B94:
- ldr r2, [r7]
- adds r1, r2, 0
- adds r1, 0xE0
- ldrh r0, [r1]
- subs r0, 0x3
- strh r0, [r1]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA6
- bne _08052BAE
- subs r1, 0x4C
- movs r0, 0xC8
- strh r0, [r1]
-_08052BAE:
- ldr r1, _08052BBC @ =0x00001241
- movs r0, 0
- bl SetGpuReg
- bl _08053774
- .align 2, 0
-_08052BBC: .4byte 0x00001241
-_08052BC0:
- ldr r2, _08052C14 @ =gSprites
- ldr r4, [r7]
- adds r3, r4, 0
- adds r3, 0x90
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x22]
- subs r1, 0x2
- strh r1, [r0, 0x22]
- adds r0, r4, 0
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x22]
- subs r1, 0x2
- strh r1, [r0, 0x22]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r2, 0x22
- ldrsh r1, [r0, r2]
- movs r0, 0x8
- negs r0, r0
- cmp r1, r0
- blt _08052C06
- bl _08053774
-_08052C06:
- adds r1, r4, 0
- adds r1, 0x94
- movs r0, 0x1D
- strh r0, [r1]
- bl _08053774
- .align 2, 0
-_08052C14: .4byte gSprites
-_08052C18:
- movs r1, 0x1
- negs r1, r1
- movs r0, 0
- str r0, [sp]
- adds r0, r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _08052C38 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x94
- movs r1, 0x1E
- strh r1, [r0]
- bl _08053774
- .align 2, 0
-_08052C38: .4byte gUnknown_2031DAC
-_08052C3C:
- ldr r0, _08052C80 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08052C4C
- bl _08053774
-_08052C4C:
- ldr r0, [r7]
- adds r0, 0x90
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _08052C84 @ =gSprites
- adds r0, r4
- bl DestroySprite
- ldr r0, [r7]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- movs r0, 0x2
- bl sub_8050968
- ldr r1, [r7]
- bl _08053708
- .align 2, 0
-_08052C80: .4byte gPaletteFade
-_08052C84: .4byte gSprites
-_08052C88:
- movs r1, 0x1
- negs r1, r1
- movs r0, 0
- str r0, [sp]
- adds r0, r1, 0
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r5, _08052CCC @ =gUnknown_826CE84
- adds r0, r5, 0
- movs r1, 0x6F
- movs r2, 0xAA
- movs r3, 0
- bl CreateSprite
- ldr r4, _08052CD0 @ =gUnknown_2031DAC
- ldr r1, [r4]
- adds r1, 0x90
- strb r0, [r1]
- movs r2, 0xA
- negs r2, r2
- adds r0, r5, 0
- movs r1, 0x81
- movs r3, 0
- bl CreateSprite
- ldr r1, [r4]
- adds r1, 0x91
- strb r0, [r1]
- ldr r1, [r4]
- bl _08053708
- .align 2, 0
-_08052CCC: .4byte gUnknown_826CE84
-_08052CD0: .4byte gUnknown_2031DAC
-_08052CD4:
- ldr r0, _08052D24 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08052CF2
- movs r0, 0x28
- bl PlaySE
- ldr r0, _08052D28 @ =gUnknown_2031DAC
- ldr r1, [r0]
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_08052CF2:
- ldr r3, _08052D2C @ =gSprites
- ldr r0, _08052D28 @ =gUnknown_2031DAC
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x90
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0, 0x26]
- subs r1, 0x3
- strh r1, [r0, 0x26]
- adds r2, 0x91
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r3
- ldrh r1, [r0, 0x26]
- adds r1, 0x3
- strh r1, [r0, 0x26]
- bl _08053774
- .align 2, 0
-_08052D24: .4byte gPaletteFade
-_08052D28: .4byte gUnknown_2031DAC
-_08052D2C: .4byte gSprites
-_08052D30:
- ldr r5, _08052D94 @ =gSprites
- ldr r4, [r7]
- adds r2, r4, 0
- adds r2, 0x90
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrh r1, [r0, 0x26]
- subs r1, 0x3
- strh r1, [r0, 0x26]
- adds r6, r4, 0
- adds r6, 0x91
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- ldrh r1, [r0, 0x26]
- adds r1, 0x3
- strh r1, [r0, 0x26]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r3, r0, r5
- movs r0, 0x26
- ldrsh r1, [r3, r0]
- movs r0, 0x5A
- negs r0, r0
- cmp r1, r0
- ble _08052D76
- bl _08053774
-_08052D76:
- movs r2, 0x1
- strh r2, [r3, 0x30]
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- strh r2, [r0, 0x30]
- adds r1, r4, 0
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- ldr r0, _08052D98 @ =c3_0805465C
- b _08052FBE
- .align 2, 0
-_08052D94: .4byte gSprites
-_08052D98: .4byte c3_0805465C
-_08052D9C:
- ldr r2, _08052DAC @ =0x0000ffff
- movs r0, 0x8
- movs r1, 0x10
- bl BlendPalettes
- bl _08053704
- .align 2, 0
-_08052DAC: .4byte 0x0000ffff
-_08052DB0:
- ldr r2, _08052DC0 @ =0x0000ffff
- movs r0, 0x8
- movs r1, 0x10
- bl BlendPalettes
- bl _08053704
- .align 2, 0
-_08052DC0: .4byte 0x0000ffff
-_08052DC4:
- ldr r2, _08052DD4 @ =0x0000ffff
- movs r0, 0x8
- movs r1, 0x10
- bl BlendPalettes
- bl _08053704
- .align 2, 0
-_08052DD4: .4byte 0x0000ffff
-_08052DD8:
- ldr r5, _08052E44 @ =gUnknown_2031DAC
- ldr r0, [r5]
- adds r0, 0xF0
- ldrh r0, [r0]
- bl IsPokeSpriteNotFlipped
- lsls r0, 24
- cmp r0, 0
- bne _08052E50
- ldr r4, _08052E48 @ =gSprites
- ldr r2, [r5]
- adds r2, 0x8E
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0
- adds r1, 0x10
- adds r0, r1
- ldr r1, _08052E4C @ =gUnknown_826CF88
- str r1, [r0]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0, 0x1]
- movs r2, 0x3
- orrs r1, r2
- strb r1, [r0, 0x1]
- ldr r0, [r5]
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0
- movs r2, 0x3
- movs r3, 0x3
- bl CalcCenterToCornerVec
- ldr r0, [r5]
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0
- bl StartSpriteAffineAnim
- b _08052E66
- .align 2, 0
-_08052E44: .4byte gUnknown_2031DAC
-_08052E48: .4byte gSprites
-_08052E4C: .4byte gUnknown_826CF88
-_08052E50:
- ldr r0, [r5]
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08052EF4 @ =gSprites
- adds r0, r1
- movs r1, 0
- bl StartSpriteAffineAnim
-_08052E66:
- ldr r5, _08052EF8 @ =gUnknown_2031DAC
- ldr r0, [r5]
- adds r0, 0x8F
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _08052EF4 @ =gSprites
- adds r0, r4
- movs r1, 0
- bl StartSpriteAffineAnim
- ldr r2, [r5]
- adds r3, r2, 0
- adds r3, 0x8E
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x28
- strh r1, [r0, 0x20]
- adds r2, 0x8F
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0xC8
- strh r1, [r0, 0x20]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0xC0
- strh r1, [r0, 0x22]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldr r1, _08052EFC @ =0x0000ffe0
- strh r1, [r0, 0x22]
- ldrb r0, [r3]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- adds r1, 0x3E
- ldrb r3, [r1]
- movs r2, 0x5
- negs r2, r2
- adds r0, r2, 0
- ands r0, r3
- strb r0, [r1]
- ldr r0, [r5]
- adds r0, 0x8F
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- ands r2, r1
- strb r2, [r0]
- ldr r1, [r5]
- bl _08053708
- .align 2, 0
-_08052EF4: .4byte gSprites
-_08052EF8: .4byte gUnknown_2031DAC
-_08052EFC: .4byte 0x0000ffe0
-_08052F00:
- ldr r4, _08052FC8 @ =gSprites
- ldr r2, [r7]
- adds r3, r2, 0
- adds r3, 0x8E
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x26]
- subs r1, 0x3
- movs r5, 0
- strh r1, [r0, 0x26]
- adds r2, 0x8F
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x26]
- adds r1, 0x3
- strh r1, [r0, 0x26]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r0, [r0, 0x26]
- adds r0, 0xA3
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x2
- bhi _08052F48
- movs r0, 0x27
- bl PlaySE
-_08052F48:
- ldr r2, [r7]
- adds r3, r2, 0
- adds r3, 0x8E
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r6, 0x26
- ldrsh r1, [r0, r6]
- movs r0, 0xDE
- negs r0, r0
- cmp r1, r0
- blt _08052F68
- bl _08053774
-_08052F68:
- adds r0, r2, 0
- adds r0, 0x90
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r5, [r0, 0x30]
- adds r0, r2, 0
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r5, [r0, 0x30]
- adds r1, r2, 0
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- ldr r0, [r7]
- adds r0, 0x8F
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r1, [r0]
- orrs r1, r2
- strb r1, [r0]
- ldr r0, _08052FCC @ =sub_8054734
-_08052FBE:
- movs r1, 0x5
- bl CreateTask
- bl _08053774
- .align 2, 0
-_08052FC8: .4byte gSprites
-_08052FCC: .4byte sub_8054734
-_08052FD0:
- ldr r4, _08053054 @ =gSprites
- ldr r2, [r7]
- adds r3, r2, 0
- adds r3, 0x90
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x26]
- subs r1, 0x3
- strh r1, [r0, 0x26]
- adds r2, 0x91
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x26]
- adds r1, 0x3
- strh r1, [r0, 0x26]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r2, 0x26
- ldrsh r1, [r0, r2]
- movs r0, 0xDE
- negs r0, r0
- cmp r1, r0
- ble _08053012
- b _08053774
-_08053012:
- movs r1, 0x1
- negs r1, r1
- movs r0, 0
- str r0, [sp]
- adds r0, r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, [r7]
- adds r2, r1, 0
- adds r2, 0x94
- ldrh r0, [r2]
- adds r0, 0x1
- strh r0, [r2]
- adds r1, 0x90
- ldrb r1, [r1]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- ldr r0, [r7]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- b _08053774
- .align 2, 0
-_08053054: .4byte gSprites
-_08053058:
- ldr r0, _080530E4 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08053066
- b _08053774
-_08053066:
- ldr r1, [r7]
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- movs r0, 0x1
- bl sub_8050968
- ldr r0, [r7]
- adds r0, 0xE0
- movs r1, 0xA6
- strh r1, [r0]
- movs r0, 0x3
- bl sub_8050968
- ldr r0, [r7]
- adds r0, 0xE4
- movs r1, 0xCE
- lsls r1, 1
- strh r1, [r0]
- ldr r0, _080530E8 @ =gUnknown_826CE44
- movs r4, 0x14
- negs r4, r4
- movs r1, 0x78
- adds r2, r4, 0
- movs r3, 0x3
- bl CreateSprite
- ldr r1, [r7]
- adds r1, 0x90
- strb r0, [r1]
- ldr r5, _080530EC @ =gSprites
- ldr r0, [r7]
- adds r0, 0x90
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r5, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, _080530F0 @ =sub_804FD48
- str r1, [r0]
- ldr r0, _080530F4 @ =gUnknown_826CE84
- movs r1, 0x78
- adds r2, r4, 0
- movs r3, 0
- bl CreateSprite
- ldr r1, [r7]
- adds r1, 0x91
- strb r0, [r1]
- ldr r0, [r7]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- movs r1, 0x1
- bl StartSpriteAnim
- b _08053774
- .align 2, 0
-_080530E4: .4byte gPaletteFade
-_080530E8: .4byte gUnknown_826CE44
-_080530EC: .4byte gSprites
-_080530F0: .4byte sub_804FD48
-_080530F4: .4byte gUnknown_826CE84
-_080530F8:
- movs r1, 0x1
- negs r1, r1
- movs r0, 0
- str r0, [sp]
- adds r0, r1, 0
- movs r2, 0x10
- movs r3, 0
- b _08053700
-_08053108:
- movs r1, 0x92
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- ldr r0, _08053124 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08053120
- b _08053774
-_08053120:
- b _08053704
- .align 2, 0
-_08053124: .4byte gPaletteFade
-_08053128:
- ldr r2, _0805317C @ =gSprites
- ldr r4, [r7]
- adds r3, r4, 0
- adds r3, 0x90
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x26]
- adds r1, 0x4
- strh r1, [r0, 0x26]
- adds r0, r4, 0
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrh r1, [r0, 0x26]
- adds r1, 0x4
- strh r1, [r0, 0x26]
- ldrb r1, [r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r6, 0x26
- ldrsh r1, [r0, r6]
- movs r2, 0x22
- ldrsh r0, [r0, r2]
- adds r1, r0
- cmp r1, 0x40
- beq _0805316E
- b _08053774
-_0805316E:
- adds r0, r4, 0
- adds r0, 0x94
- movs r1, 0x90
- strh r1, [r0]
- movs r0, 0
- str r0, [r4, 0x64]
- b _08053774
- .align 2, 0
-_0805317C: .4byte gSprites
-_08053180:
- movs r1, 0xB2
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- ldr r4, _080531DC @ =gUnknown_2031DAC
- ldr r2, [r4]
- adds r1, r2, 0
- adds r1, 0xE0
- ldrh r0, [r1]
- adds r0, 0x3
- strh r0, [r1]
- adds r1, 0x4
- ldrh r0, [r1]
- adds r0, 0x3
- strh r0, [r1]
- ldr r0, [r2, 0x64]
- adds r0, 0x1
- str r0, [r2, 0x64]
- cmp r0, 0xA
- bne _080531C4
- ldr r0, _080531E0 @ =c3_08054588
- movs r1, 0x5
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080531E4 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r0, 0x1
- strh r0, [r1, 0xC]
-_080531C4:
- ldr r1, [r4]
- adds r3, r1, 0
- adds r3, 0xE0
- movs r6, 0
- ldrsh r0, [r3, r6]
- movs r2, 0x9E
- lsls r2, 1
- cmp r0, r2
- bgt _080531D8
- b _08053774
-_080531D8:
- strh r2, [r3]
- b _08053708
- .align 2, 0
-_080531DC: .4byte gUnknown_2031DAC
-_080531E0: .4byte c3_08054588
-_080531E4: .4byte gTasks
-_080531E8:
- ldr r0, [r7]
- adds r0, 0x90
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _08053220 @ =gSprites
- adds r0, r4
- bl DestroySprite
- ldr r0, [r7]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- ldr r3, [r7]
- adds r2, r3, 0
- adds r2, 0x94
- ldrh r0, [r2]
- adds r0, 0x1
- movs r1, 0
- strh r0, [r2]
- str r1, [r3, 0x64]
- b _08053774
- .align 2, 0
-_08053220: .4byte gSprites
-_08053224:
- ldr r0, _08053244 @ =c3_08054588
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0
- beq _08053234
- b _08053774
-_08053234:
- ldr r0, _08053248 @ =gUnknown_2031DAC
- ldr r2, [r0]
- adds r1, r2, 0
- adds r1, 0x94
- movs r0, 0x2E
- strh r0, [r1]
- str r3, [r2, 0x64]
- b _08053774
- .align 2, 0
-_08053244: .4byte c3_08054588
-_08053248: .4byte gUnknown_2031DAC
-_0805324C:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0xA
- beq _0805325A
- b _08053774
-_0805325A:
- b _08053708
-_0805325C:
- ldr r1, [r7]
- adds r5, r1, 0
- adds r5, 0xE0
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
- lsls r0, 16
- asrs r0, 16
- movs r6, 0xAE
- lsls r6, 1
- cmp r0, r6
- bgt _08053276
- b _08053774
-_08053276:
- strh r6, [r5]
- b _08053708
-_0805327A:
- ldr r0, _08053298 @ =gUnknown_826CF30
- movs r1, 0x78
- movs r2, 0x50
- movs r3, 0
- bl CreateSprite
- ldr r2, _0805329C @ =gUnknown_2031DAC
- ldr r1, [r2]
- adds r1, 0x91
- strb r0, [r1]
- ldr r0, [r2]
- adds r0, 0x94
- movs r1, 0x32
- strh r1, [r0]
- b _08053774
- .align 2, 0
-_08053298: .4byte gUnknown_826CF30
-_0805329C: .4byte gUnknown_2031DAC
-_080532A0:
- ldr r2, _080532DC @ =gSprites
- ldr r0, [r7]
- adds r0, 0x91
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r0, r2
- adds r0, r1, 0
- adds r0, 0x3F
- ldrb r0, [r0]
- lsls r0, 27
- cmp r0, 0
- blt _080532BE
- b _08053774
-_080532BE:
- adds r0, r1, 0
- bl DestroySprite
- movs r0, 0x6
- bl sub_8050968
- ldr r1, [r7]
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- movs r0, 0x98
- bl PlaySE
- b _08053774
- .align 2, 0
-_080532DC: .4byte gSprites
-_080532E0:
- ldr r1, [r7]
- adds r2, r1, 0
- adds r2, 0xEA
- ldrh r3, [r2]
- ldr r0, _080532F8 @ =0x000003ff
- cmp r3, r0
- bhi _080532FC
- adds r0, r3, 0
- adds r0, 0x34
- strh r0, [r2]
- b _0805330A
- .align 2, 0
-_080532F8: .4byte 0x000003ff
-_080532FC:
- movs r0, 0x80
- lsls r0, 3
- strh r0, [r2]
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0805330A:
- ldr r4, [r7]
-_0805330C:
- adds r0, r4, 0
- adds r0, 0xEA
- ldrh r1, [r0]
- movs r0, 0x80
- lsls r0, 8
- bl __divsi3
- adds r4, 0xE8
- strh r0, [r4]
- b _08053774
-_08053320:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _0805333C @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x94
- movs r1, 0x3C
- strh r1, [r0]
- b _08053774
- .align 2, 0
-_0805333C: .4byte gUnknown_2031DAC
-_08053340:
- ldr r4, _08053364 @ =gPaletteFade
- ldrb r1, [r4, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0805334E
- b _08053774
-_0805334E:
- movs r0, 0x5
- bl sub_8050968
- movs r0, 0x7
- bl sub_8050968
- ldrb r0, [r4, 0x8]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r4, 0x8]
- b _08053704
- .align 2, 0
-_08053364: .4byte gPaletteFade
-_08053368:
- ldr r2, _08053380 @ =gPaletteFade
- ldrb r1, [r2, 0x8]
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r2, 0x8]
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- b _08053700
- .align 2, 0
-_08053380: .4byte gPaletteFade
-_08053384:
- movs r1, 0xA2
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- ldr r0, _080533A0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0805339C
- b _08053774
-_0805339C:
- b _08053704
- .align 2, 0
-_080533A0: .4byte gPaletteFade
-_080533A4:
- ldr r0, _08053438 @ =gUnknown_826CDE4
- movs r2, 0x8
- negs r2, r2
- movs r1, 0x78
- movs r3, 0
- bl CreateSprite
- ldr r5, _0805343C @ =gUnknown_2031DAC
- ldr r1, [r5]
- adds r1, 0xD3
- movs r6, 0
- strb r0, [r1]
- ldr r4, _08053440 @ =gSprites
- ldr r2, [r5]
- adds r2, 0xD3
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x4A
- strh r1, [r0, 0x34]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r1, r4, 0
- adds r1, 0x1C
- adds r0, r1
- ldr r1, _08053444 @ =sub_8053A0C
- str r1, [r0]
- ldrb r1, [r2]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r0, [r5]
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0x2
- bl StartSpriteAffineAnim
- ldr r0, [r5]
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- ldrb r1, [r0, 0x5]
- lsrs r1, 4
- adds r1, 0x10
- movs r0, 0x1
- lsls r0, r1
- ldr r2, _08053448 @ =0x0000ffff
- movs r1, 0x10
- bl BlendPalettes
- ldr r2, [r5]
- adds r1, r2, 0
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- str r6, [r2, 0x64]
- b _08053774
- .align 2, 0
-_08053438: .4byte gUnknown_826CDE4
-_0805343C: .4byte gUnknown_2031DAC
-_08053440: .4byte gSprites
-_08053444: .4byte sub_8053A0C
-_08053448: .4byte 0x0000ffff
-_0805344C:
- ldr r2, _08053478 @ =gSprites
- ldr r0, [r7]
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r1, [r0, 0x5]
- lsrs r1, 4
- adds r1, 0x10
- movs r0, 0x1
- lsls r0, r1
- ldr r1, _0805347C @ =0x0000ffff
- str r1, [sp]
- movs r1, 0x1
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r1, [r7]
- b _08053708
- .align 2, 0
-_08053478: .4byte gSprites
-_0805347C: .4byte 0x0000ffff
-_08053480:
- ldr r2, _080534BC @ =gSprites
- ldr r3, [r7]
- adds r0, r3, 0
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, 0x1C
- adds r0, r2
- ldr r1, [r0]
- ldr r0, _080534C0 @ =SpriteCallbackDummy
- cmp r1, r0
- beq _0805349E
- b _08053774
-_0805349E:
- adds r0, r3, 0
- adds r0, 0xF2
- ldrh r2, [r0]
- lsls r0, r2, 3
- ldr r1, _080534C4 @ =gMonFrontPicTable
- adds r0, r1
- ldr r1, _080534C8 @ =gMonSpritesGfxPtr
- ldr r1, [r1]
- ldr r1, [r1, 0x10]
- ldr r3, [r3, 0x6C]
- bl HandleLoadSpecialPokePic
- ldr r1, [r7]
- b _08053708
- .align 2, 0
-_080534BC: .4byte gSprites
-_080534C0: .4byte SpriteCallbackDummy
-_080534C4: .4byte gMonFrontPicTable
-_080534C8: .4byte gMonSpritesGfxPtr
-_080534CC:
- ldr r4, _08053578 @ =gSprites
- ldr r2, [r7]
- adds r6, r2, 0
- adds r6, 0x8F
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r5, 0
- movs r1, 0x78
- strh r1, [r0, 0x20]
- ldrb r0, [r6]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldr r3, _0805357C @ =gMonFrontPicCoords
- adds r2, 0xF2
- ldrh r0, [r2]
- lsls r0, 2
- adds r0, r3
- ldrb r0, [r0, 0x1]
- adds r0, 0x3C
- strh r0, [r1, 0x22]
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r5, [r0, 0x24]
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- strh r5, [r0, 0x26]
- ldrb r1, [r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- movs r1, 0
- bl StartSpriteAnim
- ldr r0, [r7]
- adds r0, 0x8F
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r4
- ldrb r1, [r1, 0x5]
- lsrs r1, 4
- movs r2, 0x2
- str r2, [sp]
- movs r2, 0x1
- str r2, [sp, 0x4]
- movs r2, 0x14
- str r2, [sp, 0x8]
- ldr r2, _08053580 @ =0x000fffff
- str r2, [sp, 0xC]
- movs r2, 0x78
- movs r3, 0x54
- bl CreatePokeballSpriteToReleaseMon
- ldr r0, [r7]
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl FreeSpriteOamMatrix
- ldr r0, [r7]
- adds r0, 0xD3
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- ldr r1, [r7]
- b _08053708
- .align 2, 0
-_08053578: .4byte gSprites
-_0805357C: .4byte gMonFrontPicCoords
-_08053580: .4byte 0x000fffff
-_08053584:
- movs r1, 0xAA
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- ldr r4, _080535B0 @ =gStringVar4
- ldr r1, _080535B4 @ =gUnknown_841E20D
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl sub_8054508
- ldr r0, _080535B8 @ =gUnknown_2031DAC
- ldr r3, [r0]
- adds r1, r3, 0
- adds r1, 0x94
- movs r2, 0
- movs r0, 0xA7
- b _080535EA
- .align 2, 0
-_080535B0: .4byte gStringVar4
-_080535B4: .4byte gUnknown_841E20D
-_080535B8: .4byte gUnknown_2031DAC
-_080535BC:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x3C
- bhi _080535CA
- b _08053774
-_080535CA:
- adds r2, r1, 0
- adds r2, 0xF2
- ldrh r1, [r2]
- movs r0, 0xCE
- lsls r0, 1
- cmp r1, r0
- beq _080535E0
- adds r0, r1, 0
- movs r1, 0
- bl PlayCry1
-_080535E0:
- ldr r3, [r7]
- adds r1, r3, 0
- adds r1, 0x94
- movs r2, 0
- ldr r0, _080535F0 @ =0x0000010b
-_080535EA:
- strh r0, [r1]
- str r2, [r3, 0x64]
- b _08053774
- .align 2, 0
-_080535F0: .4byte 0x0000010b
-_080535F4:
- bl IsCryFinished
- lsls r0, 24
- cmp r0, 0
- bne _08053600
- b _08053774
-_08053600:
- ldr r0, _0805360C @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x94
- movs r1, 0x44
- strh r1, [r0]
- b _08053774
- .align 2, 0
-_0805360C: .4byte gUnknown_2031DAC
-_08053610:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0xA
- bne _08053622
- ldr r0, _08053650 @ =0x00000103
- bl PlayFanfare
-_08053622:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- cmp r0, 0xFA
- beq _0805362C
- b _08053774
-_0805362C:
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- movs r5, 0
- strh r0, [r1]
- ldr r4, _08053654 @ =gStringVar4
- ldr r1, _08053658 @ =gUnknown_841E21E
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl sub_8054508
- ldr r0, [r7]
- str r5, [r0, 0x64]
- b _08053774
- .align 2, 0
-_08053650: .4byte 0x00000103
-_08053654: .4byte gStringVar4
-_08053658: .4byte gUnknown_841E21E
-_0805365C:
- ldr r1, [r7]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x3C
- beq _0805366A
- b _08053774
-_0805366A:
- b _08053708
-_0805366C:
- bl sub_80544AC
- b _08053704
-_08053672:
- ldr r2, [r7]
- adds r0, r2, 0
- adds r0, 0xEE
- ldrb r0, [r0]
- cmp r0, 0
- beq _08053682
- movs r0, 0x1
- b _08053776
-_08053682:
- ldr r0, _08053694 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08053774
- adds r1, r2, 0
- b _08053708
- .align 2, 0
-_08053694: .4byte gMain
-_08053698:
- ldr r0, _080536DC @ =gSpecialVar_0x8005
- ldrb r0, [r0]
- movs r1, 0
- bl sub_805080C
- ldr r1, _080536E0 @ =gCB2_AfterEvolution
- ldr r0, _080536E4 @ =sub_8050948
- str r0, [r1]
- ldr r7, _080536E8 @ =gUnknown_2031DA4
- ldrb r0, [r7]
- movs r6, 0x64
- muls r0, r6
- ldr r5, _080536EC @ =gPlayerParty
- adds r0, r5
- movs r1, 0x1
- movs r2, 0
- bl GetEvolutionTargetSpecies
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0
- beq _08053704
- ldrb r3, [r7]
- adds r0, r3, 0
- muls r0, r6
- adds r0, r5
- ldr r1, _080536F0 @ =gUnknown_2031DAC
- ldr r1, [r1]
- adds r1, 0x8F
- ldrb r2, [r1]
- adds r1, r4, 0
- bl TradeEvolutionScene
- b _08053704
- .align 2, 0
-_080536DC: .4byte gSpecialVar_0x8005
-_080536E0: .4byte gCB2_AfterEvolution
-_080536E4: .4byte sub_8050948
-_080536E8: .4byte gUnknown_2031DA4
-_080536EC: .4byte gPlayerParty
-_080536F0: .4byte gUnknown_2031DAC
-_080536F4:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
-_08053700:
- bl BeginNormalPaletteFade
-_08053704:
- ldr r0, _08053714 @ =gUnknown_2031DAC
- ldr r1, [r0]
-_08053708:
- adds r1, 0x94
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _08053774
- .align 2, 0
-_08053714: .4byte gUnknown_2031DAC
-_08053718:
- ldr r0, _08053780 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- bne _08053774
- ldr r0, [r7]
- adds r0, 0xF4
- ldrh r0, [r0]
- bl PlayNewMapMusic
- ldr r0, [r7]
- cmp r0, 0
- beq _08053766
- bl FreeAllWindowBuffers
- movs r0, 0x3
- bl GetBgTilemapBuffer
- bl Free
- movs r0, 0x1
- bl GetBgTilemapBuffer
- bl Free
- movs r0, 0
- bl GetBgTilemapBuffer
- bl Free
- bl FreeMonSpritesGfx
- ldr r0, [r7]
- bl Free
- str r4, [r7]
-_08053766:
- ldr r0, _08053784 @ =CB2_ReturnToField
- bl SetMainCallback2
- bl sub_8053AE4
- bl HelpSystem_Enable
-_08053774:
- movs r0, 0
-_08053776:
- add sp, 0x10
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_08053780: .4byte gPaletteFade
-_08053784: .4byte CB2_ReturnToField
- thumb_func_end sub_805232C
-
- thumb_func_start sub_8053788
-sub_8053788: @ 8053788
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- ldr r0, _080537A4 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r0, r2
- ldrb r0, [r1]
- cmp r0, 0
- beq _080537A8
- cmp r0, 0x4
- beq _080537B8
- b _08053814
- .align 2, 0
-_080537A4: .4byte gMain
-_080537A8:
- movs r0, 0x4
- strb r0, [r1]
- ldr r1, _080537B4 @ =gSoftResetDisabled
- movs r0, 0x1
- b _08053812
- .align 2, 0
-_080537B4: .4byte gSoftResetDisabled
-_080537B8:
- ldr r0, _080537F4 @ =gCB2_AfterEvolution
- ldr r1, _080537F8 @ =sub_8053E8C
- mov r8, r1
- str r1, [r0]
- ldr r7, _080537FC @ =gUnknown_2031DA4
- ldrb r0, [r7]
- movs r6, 0x64
- muls r0, r6
- ldr r5, _08053800 @ =gPlayerParty
- adds r0, r5
- movs r1, 0x1
- movs r2, 0
- bl GetEvolutionTargetSpecies
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0
- beq _08053808
- ldrb r3, [r7]
- adds r0, r3, 0
- muls r0, r6
- adds r0, r5
- ldr r1, _08053804 @ =gUnknown_2031DAC
- ldr r1, [r1]
- adds r1, 0x8F
- ldrb r2, [r1]
- adds r1, r4, 0
- bl TradeEvolutionScene
- b _0805380E
- .align 2, 0
-_080537F4: .4byte gCB2_AfterEvolution
-_080537F8: .4byte sub_8053E8C
-_080537FC: .4byte gUnknown_2031DA4
-_08053800: .4byte gPlayerParty
-_08053804: .4byte gUnknown_2031DAC
-_08053808:
- mov r0, r8
- bl SetMainCallback2
-_0805380E:
- ldr r1, _08053838 @ =gUnknown_2031DA4
- movs r0, 0xFF
-_08053812:
- strb r0, [r1]
-_08053814:
- bl HasLinkErrorOccurred
- lsls r0, 24
- cmp r0, 0
- bne _08053822
- bl RunTasks
-_08053822:
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08053838: .4byte gUnknown_2031DA4
- thumb_func_end sub_8053788
-
- thumb_func_start sub_805383C
-sub_805383C: @ 805383C
- push {r4-r6,lr}
- bl sub_804FFC4
- bl GetBlockReceivedStatus
- lsls r0, 24
- lsrs r5, r0, 24
- movs r6, 0x1
- adds r0, r5, 0
- ands r0, r6
- cmp r0, 0
- beq _0805387A
- ldr r4, _080538A8 @ =gBlockRecvBuffer
- ldrh r1, [r4]
- ldr r0, _080538AC @ =0x0000dcba
- cmp r1, r0
- bne _08053864
- ldr r0, _080538B0 @ =sub_8053788
- bl SetMainCallback2
-_08053864:
- ldrh r1, [r4]
- ldr r0, _080538B4 @ =0x0000abcd
- cmp r1, r0
- bne _08053874
- ldr r0, _080538B8 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x72
- strb r6, [r0]
-_08053874:
- movs r0, 0
- bl ResetBlockReceivedFlag
-_0805387A:
- movs r0, 0x2
- ands r0, r5
- cmp r0, 0
- beq _080538A2
- ldr r0, _080538A8 @ =gBlockRecvBuffer
- movs r1, 0x80
- lsls r1, 1
- adds r0, r1
- ldrh r1, [r0]
- ldr r0, _080538B4 @ =0x0000abcd
- cmp r1, r0
- bne _0805389C
- ldr r0, _080538B8 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x73
- movs r1, 0x1
- strb r1, [r0]
-_0805389C:
- movs r0, 0x1
- bl ResetBlockReceivedFlag
-_080538A2:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_080538A8: .4byte gBlockRecvBuffer
-_080538AC: .4byte 0x0000dcba
-_080538B0: .4byte sub_8053788
-_080538B4: .4byte 0x0000abcd
-_080538B8: .4byte gUnknown_2031DAC
- thumb_func_end sub_805383C
-
- thumb_func_start sub_80538BC
-sub_80538BC: @ 80538BC
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r1, 0x2E
- ldrsh r0, [r5, r1]
- movs r1, 0xA
- bl __divsi3
- ldrh r4, [r5, 0x22]
- adds r4, r0
- strh r4, [r5, 0x22]
- ldrh r0, [r5, 0x30]
- ldrh r2, [r5, 0x38]
- adds r0, r2
- strh r0, [r5, 0x38]
- movs r1, 0x38
- ldrsh r0, [r5, r1]
- movs r1, 0xA
- bl __divsi3
- strh r0, [r5, 0x20]
- lsls r4, 16
- asrs r4, 16
- cmp r4, 0x4C
- ble _0805390A
- movs r0, 0x4C
- strh r0, [r5, 0x22]
- movs r2, 0x2E
- ldrsh r1, [r5, r2]
- movs r2, 0x32
- ldrsh r0, [r5, r2]
- muls r0, r1
- negs r0, r0
- movs r1, 0x64
- bl __divsi3
- strh r0, [r5, 0x2E]
- ldrh r0, [r5, 0x34]
- adds r0, 0x1
- strh r0, [r5, 0x34]
-_0805390A:
- movs r1, 0x20
- ldrsh r0, [r5, r1]
- cmp r0, 0x78
- bne _08053916
- movs r0, 0
- strh r0, [r5, 0x30]
-_08053916:
- ldrh r0, [r5, 0x36]
- ldrh r2, [r5, 0x2E]
- adds r0, r2
- strh r0, [r5, 0x2E]
- movs r1, 0x34
- ldrsh r0, [r5, r1]
- cmp r0, 0x4
- bne _0805392E
- movs r0, 0x1
- strh r0, [r5, 0x3C]
- ldr r0, _08053934 @ =SpriteCallbackDummy
- str r0, [r5, 0x1C]
-_0805392E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08053934: .4byte SpriteCallbackDummy
- thumb_func_end sub_80538BC
-
- thumb_func_start sub_8053938
-sub_8053938: @ 8053938
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- ldr r1, _080539A0 @ =gUnknown_826D1E4
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r1, [r4, 0x26]
- adds r0, r1
- strh r0, [r4, 0x26]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0x16
- bne _08053960
- movs r0, 0x31
- bl PlaySE
-_08053960:
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x2C
- bne _08053996
- movs r0, 0x85
- bl PlaySE
- ldr r0, _080539A4 @ =sub_80539AC
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x2E]
- ldrb r1, [r4, 0x5]
- lsrs r1, 4
- adds r1, 0x10
- movs r0, 0x1
- lsls r0, r1
- movs r1, 0x1
- negs r1, r1
- ldr r2, _080539A8 @ =0x0000ffff
- str r2, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
-_08053996:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080539A0: .4byte gUnknown_826D1E4
-_080539A4: .4byte sub_80539AC
-_080539A8: .4byte 0x0000ffff
- thumb_func_end sub_8053938
-
- thumb_func_start sub_80539AC
-sub_80539AC: @ 80539AC
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- cmp r0, 0x14
- bne _080539C0
- adds r0, r4, 0
- movs r1, 0x1
- bl StartSpriteAffineAnim
-_080539C0:
- ldrh r0, [r4, 0x30]
- adds r0, 0x1
- strh r0, [r4, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x14
- ble _080539FE
- ldr r1, _08053A04 @ =gUnknown_826D1E4
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- adds r0, r1
- movs r1, 0
- ldrsb r1, [r0, r1]
- ldrh r0, [r4, 0x26]
- subs r0, r1
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x17
- bne _080539FE
- adds r0, r4, 0
- bl DestroySprite
- ldr r0, _08053A08 @ =gUnknown_2031DAC
- ldr r0, [r0]
- adds r0, 0x94
- movs r1, 0xE
- strh r1, [r0]
-_080539FE:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08053A04: .4byte gUnknown_826D1E4
-_08053A08: .4byte gUnknown_2031DAC
- thumb_func_end sub_80539AC
-
- thumb_func_start sub_8053A0C
-sub_8053A0C: @ 8053A0C
- push {r4,lr}
- adds r4, r0, 0
- ldrh r2, [r4, 0x32]
- movs r1, 0x32
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08053A3C
- ldrh r0, [r4, 0x22]
- adds r0, 0x4
- strh r0, [r4, 0x22]
- lsls r0, 16
- asrs r0, 16
- movs r3, 0x34
- ldrsh r1, [r4, r3]
- cmp r0, r1
- ble _08053A8C
- adds r0, r2, 0x1
- strh r0, [r4, 0x32]
- movs r0, 0x16
- strh r0, [r4, 0x2E]
- movs r0, 0x31
- bl PlaySE
- b _08053A8C
-_08053A3C:
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0x42
- bne _08053A4A
- movs r0, 0x32
- bl PlaySE
-_08053A4A:
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0x5C
- bne _08053A58
- movs r0, 0x33
- bl PlaySE
-_08053A58:
- movs r3, 0x2E
- ldrsh r0, [r4, r3]
- cmp r0, 0x6B
- bne _08053A66
- movs r0, 0x34
- bl PlaySE
-_08053A66:
- ldr r1, _08053A94 @ =gUnknown_826D1E4
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- ldrh r3, [r4, 0x26]
- adds r0, r3
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x6C
- bne _08053A8C
- ldr r0, _08053A98 @ =SpriteCallbackDummy
- str r0, [r4, 0x1C]
-_08053A8C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08053A94: .4byte gUnknown_826D1E4
-_08053A98: .4byte SpriteCallbackDummy
- thumb_func_end sub_8053A0C
-
- thumb_func_start GetInGameTradeSpeciesInfo
-GetInGameTradeSpeciesInfo: @ 8053A9C
- push {r4-r6,lr}
- ldr r0, _08053AD0 @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- lsls r4, r0, 4
- subs r4, r0
- lsls r4, 2
- ldr r0, _08053AD4 @ =gIngameTrades
- adds r4, r0
- ldr r0, _08053AD8 @ =gStringVar1
- ldrh r1, [r4, 0x38]
- movs r6, 0xB
- muls r1, r6
- ldr r5, _08053ADC @ =gSpeciesNames
- adds r1, r5
- bl StringCopy
- ldr r0, _08053AE0 @ =gStringVar2
- ldrh r1, [r4, 0xC]
- muls r1, r6
- adds r1, r5
- bl StringCopy
- ldrh r0, [r4, 0x38]
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08053AD0: .4byte gSpecialVar_0x8004
-_08053AD4: .4byte gIngameTrades
-_08053AD8: .4byte gStringVar1
-_08053ADC: .4byte gSpeciesNames
-_08053AE0: .4byte gStringVar2
- thumb_func_end GetInGameTradeSpeciesInfo
-
- thumb_func_start sub_8053AE4
-sub_8053AE4: @ 8053AE4
- push {r4,lr}
- sub sp, 0x20
- ldr r0, _08053B2C @ =gSpecialVar_0x8004
- ldrh r0, [r0]
- lsls r4, r0, 4
- subs r4, r0
- lsls r4, 2
- ldr r0, _08053B30 @ =gIngameTrades
- adds r4, r0
- ldr r0, _08053B34 @ =gSpecialVar_0x8005
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08053B38 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- ldr r0, _08053B3C @ =gStringVar1
- mov r1, sp
- bl StringCopy10
- ldr r0, _08053B40 @ =gStringVar2
- ldrh r2, [r4, 0xC]
- movs r1, 0xB
- muls r1, r2
- ldr r2, _08053B44 @ =gSpeciesNames
- adds r1, r2
- bl StringCopy
- add sp, 0x20
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08053B2C: .4byte gSpecialVar_0x8004
-_08053B30: .4byte gIngameTrades
-_08053B34: .4byte gSpecialVar_0x8005
-_08053B38: .4byte gPlayerParty
-_08053B3C: .4byte gStringVar1
-_08053B40: .4byte gStringVar2
-_08053B44: .4byte gSpeciesNames
- thumb_func_end sub_8053AE4
-
- thumb_func_start sub_8053B48
-sub_8053B48: @ 8053B48
- push {r4-r7,lr}
- sub sp, 0x38
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r2, r1, 4
- subs r2, r1
- lsls r2, 2
- ldr r1, _08053CA4 @ =gIngameTrades
- adds r5, r2, r1
- movs r1, 0x64
- muls r0, r1
- ldr r1, _08053CA8 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x38
- bl GetMonData
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- add r4, sp, 0x34
- movs r0, 0xFE
- strb r0, [r4]
- ldr r6, _08053CAC @ =gEnemyParty
- ldrh r1, [r5, 0xC]
- movs r3, 0x1
- str r3, [sp]
- ldr r0, [r5, 0x24]
- str r0, [sp, 0x4]
- str r3, [sp, 0x8]
- ldr r0, [r5, 0x18]
- str r0, [sp, 0xC]
- adds r0, r6, 0
- movs r3, 0x20
- bl CreateMon
- adds r2, r5, 0
- adds r2, 0xE
- adds r0, r6, 0
- movs r1, 0x27
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0xF
- adds r0, r6, 0
- movs r1, 0x28
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x10
- adds r0, r6, 0
- movs r1, 0x29
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x11
- adds r0, r6, 0
- movs r1, 0x2A
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x12
- adds r0, r6, 0
- movs r1, 0x2B
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x13
- adds r0, r6, 0
- movs r1, 0x2C
- bl SetMonData
- adds r0, r6, 0
- movs r1, 0x2
- adds r2, r5, 0
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x2B
- adds r0, r6, 0
- movs r1, 0x7
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x36
- adds r0, r6, 0
- movs r1, 0x31
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x14
- adds r0, r6, 0
- movs r1, 0x2E
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x1D
- adds r0, r6, 0
- movs r1, 0x17
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x1E
- adds r0, r6, 0
- movs r1, 0x18
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x1C
- adds r0, r6, 0
- movs r1, 0x16
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x1F
- adds r0, r6, 0
- movs r1, 0x21
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x20
- adds r0, r6, 0
- movs r1, 0x2F
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x37
- adds r0, r6, 0
- movs r1, 0x30
- bl SetMonData
- adds r0, r6, 0
- movs r1, 0x23
- adds r2, r4, 0
- bl SetMonData
- mov r4, sp
- adds r4, 0x35
- movs r0, 0
- strb r0, [r4]
- ldrh r0, [r5, 0x28]
- cmp r0, 0
- beq _08053CC0
- bl ItemIsMail
- lsls r0, 24
- cmp r0, 0
- beq _08053CB4
- add r0, sp, 0x10
- adds r1, r5, 0
- bl sub_8053CD4
- ldr r0, _08053CB0 @ =gUnknown_2031CCC
- add r1, sp, 0x10
- ldm r1!, {r2,r3,r7}
- stm r0!, {r2,r3,r7}
- ldm r1!, {r2,r3,r7}
- stm r0!, {r2,r3,r7}
- ldm r1!, {r2,r3,r7}
- stm r0!, {r2,r3,r7}
- adds r0, r6, 0
- movs r1, 0x40
- adds r2, r4, 0
- bl SetMonData
- adds r2, r5, 0
- adds r2, 0x28
- adds r0, r6, 0
- movs r1, 0xC
- bl SetMonData
- b _08053CC0
- .align 2, 0
-_08053CA4: .4byte gIngameTrades
-_08053CA8: .4byte gPlayerParty
-_08053CAC: .4byte gEnemyParty
-_08053CB0: .4byte gUnknown_2031CCC
-_08053CB4:
- adds r2, r5, 0
- adds r2, 0x28
- adds r0, r6, 0
- movs r1, 0xC
- bl SetMonData
-_08053CC0:
- ldr r0, _08053CD0 @ =gEnemyParty
- bl CalculateMonStats
- add sp, 0x38
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08053CD0: .4byte gEnemyParty
- thumb_func_end sub_8053B48
-
- thumb_func_start sub_8053CD4
-sub_8053CD4: @ 8053CD4
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldr r2, _08053D28 @ =gUnknown_826D1A8
- adds r0, r5, 0
- adds r0, 0x2A
- ldrb r1, [r0]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 2
- adds r2, r0, r2
- adds r1, r4, 0
- movs r3, 0x8
-_08053CEE:
- ldrh r0, [r2]
- strh r0, [r1]
- adds r2, 0x2
- adds r1, 0x2
- subs r3, 0x1
- cmp r3, 0
- bge _08053CEE
- adds r0, r4, 0
- adds r0, 0x12
- adds r1, r5, 0
- adds r1, 0x2B
- bl StringCopy
- ldr r1, [r5, 0x18]
- lsrs r0, r1, 24
- strb r0, [r4, 0x1A]
- lsrs r0, r1, 16
- strb r0, [r4, 0x1B]
- lsrs r0, r1, 8
- strb r0, [r4, 0x1C]
- strb r1, [r4, 0x1D]
- ldrh r0, [r5, 0xC]
- strh r0, [r4, 0x1E]
- ldrh r0, [r5, 0x28]
- strh r0, [r4, 0x20]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08053D28: .4byte gUnknown_826D1A8
- thumb_func_end sub_8053CD4
-
- thumb_func_start GetTradeSpecies
-GetTradeSpecies: @ 8053D2C
- push {r4-r6,lr}
- ldr r6, _08053D58 @ =gSpecialVar_0x8005
- ldrh r0, [r6]
- movs r5, 0x64
- muls r0, r5
- ldr r4, _08053D5C @ =gPlayerParty
- adds r0, r4
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _08053D60
- ldrh r0, [r6]
- muls r0, r5
- adds r0, r4
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- b _08053D62
- .align 2, 0
-_08053D58: .4byte gSpecialVar_0x8005
-_08053D5C: .4byte gPlayerParty
-_08053D60:
- movs r0, 0
-_08053D62:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end GetTradeSpecies
-
- thumb_func_start CreateInGameTradePokemon
-CreateInGameTradePokemon: @ 8053D68
- push {lr}
- ldr r0, _08053D7C @ =gSpecialVar_0x8005
- ldrb r0, [r0]
- ldr r1, _08053D80 @ =gSpecialVar_0x8004
- ldrb r1, [r1]
- bl sub_8053B48
- pop {r0}
- bx r0
- .align 2, 0
-_08053D7C: .4byte gSpecialVar_0x8005
-_08053D80: .4byte gSpecialVar_0x8004
- thumb_func_end CreateInGameTradePokemon
-
- thumb_func_start sub_8053D84
-sub_8053D84: @ 8053D84
- push {r4-r6,lr}
- bl sub_8050F14
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x1
- bne _08053DE6
- ldr r5, _08053E08 @ =gUnknown_2031DAC
- ldr r0, [r5]
- adds r0, 0x8E
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _08053E0C @ =gSprites
- adds r0, r4
- bl DestroySprite
- ldr r0, [r5]
- adds r0, 0x8F
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl FreeSpriteOamMatrix
- ldr r0, _08053E10 @ =gUnknown_2031DA4
- ldrb r4, [r0]
- ldrb r0, [r0, 0x1]
- movs r1, 0x6
- bl __umodsi3
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_805080C
- ldr r0, [r5]
- adds r2, r0, 0
- adds r2, 0x74
- ldr r1, _08053E14 @ =0x0000abcd
- strh r1, [r2]
- adds r0, 0x93
- strb r6, [r0]
- ldr r0, _08053E18 @ =sub_8053E1C
- bl SetMainCallback2
-_08053DE6:
- bl sub_80508F4
- bl sub_805383C
- bl RunTasks
- bl RunTextPrinters
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08053E08: .4byte gUnknown_2031DAC
-_08053E0C: .4byte gSprites
-_08053E10: .4byte gUnknown_2031DA4
-_08053E14: .4byte 0x0000abcd
-_08053E18: .4byte sub_8053E1C
- thumb_func_end sub_8053D84
-
- thumb_func_start sub_8053E1C
-sub_8053E1C: @ 8053E1C
- push {r4,lr}
- bl sub_804FFC4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_805383C
- cmp r4, 0
- bne _08053E68
- ldr r4, _08053E80 @ =gUnknown_2031DAC
- ldr r2, [r4]
- adds r0, r2, 0
- adds r0, 0x72
- ldrh r1, [r0]
- ldr r0, _08053E84 @ =0x00000101
- cmp r1, r0
- bne _08053E68
- adds r1, r2, 0
- adds r1, 0x74
- ldr r0, _08053E88 @ =0x0000dcba
- strh r0, [r1]
- bl bitmask_all_link_players_but_self
- lsls r0, 24
- lsrs r0, 24
- ldr r1, [r4]
- adds r1, 0x74
- movs r2, 0x14
- bl SendBlock
- ldr r0, [r4]
- adds r0, 0x72
- movs r1, 0x2
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0x73
- strb r1, [r0]
-_08053E68:
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08053E80: .4byte gUnknown_2031DAC
-_08053E84: .4byte 0x00000101
-_08053E88: .4byte 0x0000dcba
- thumb_func_end sub_8053E1C
-
- thumb_func_start sub_8053E8C
-sub_8053E8C: @ 8053E8C
- push {r4,lr}
- sub sp, 0x4
- ldr r1, _08053EAC @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x65
- bls _08053EA2
- b _08054396
-_08053EA2:
- lsls r0, 2
- ldr r1, _08053EB0 @ =_08053EB4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08053EAC: .4byte gMain
-_08053EB0: .4byte _08053EB4
- .align 2, 0
-_08053EB4:
- .4byte _0805404C
- .4byte _08054068
- .4byte _080540DC
- .4byte _08054396
- .4byte _080541E0
- .4byte _080542A0
- .4byte _080542C4
- .4byte _080542E0
- .4byte _08054304
- .4byte _0805434C
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054204
- .4byte _08054254
- .4byte _0805427E
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054104
- .4byte _08054184
- .4byte _080541A0
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054396
- .4byte _08054080
- .4byte _080540BC
-_0805404C:
- movs r0, 0x87
- lsls r0, 3
- adds r1, r2, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r4, _08054060 @ =gStringVar4
- ldr r1, _08054064 @ =gUnknown_841E325
- b _080540EA
- .align 2, 0
-_08054060: .4byte gStringVar4
-_08054064: .4byte gUnknown_841E325
-_08054068:
- bl sub_800AB9C
- ldr r0, _0805407C @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- movs r2, 0
- movs r1, 0x64
- b _080541F0
- .align 2, 0
-_0805407C: .4byte gMain
-_08054080:
- ldr r0, _080540B4 @ =gUnknown_2031DAC
- ldr r3, [r0]
- ldr r0, [r3, 0x64]
- adds r0, 0x1
- str r0, [r3, 0x64]
- cmp r0, 0xB4
- bls _0805409C
- movs r1, 0x87
- lsls r1, 3
- adds r0, r2, r1
- movs r2, 0
- movs r1, 0x65
- strb r1, [r0]
- str r2, [r3, 0x64]
-_0805409C:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- bne _080540A8
- b _08054396
-_080540A8:
- ldr r0, _080540B8 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r2
- b _080540D0
- .align 2, 0
-_080540B4: .4byte gUnknown_2031DAC
-_080540B8: .4byte gMain
-_080540BC:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- bne _080540C8
- b _08054396
-_080540C8:
- ldr r0, _080540D8 @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
-_080540D0:
- movs r1, 0x2
- strb r1, [r0]
- b _08054396
- .align 2, 0
-_080540D8: .4byte gMain
-_080540DC:
- movs r0, 0x87
- lsls r0, 3
- adds r1, r2, r0
- movs r0, 0x32
- strb r0, [r1]
- ldr r4, _080540FC @ =gStringVar4
- ldr r1, _08054100 @ =gText_SavingDontTurnOffThePower2
-_080540EA:
- adds r0, r4, 0
- bl StringExpandPlaceholders
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl sub_8054508
- b _08054396
- .align 2, 0
-_080540FC: .4byte gStringVar4
-_08054100: .4byte gText_SavingDontTurnOffThePower2
-_08054104:
- bl InUnionRoom
- cmp r0, 0
- beq _08054120
- ldr r0, _0805411C @ =gUnknown_2031DAC
- ldr r1, [r0]
- adds r1, 0xF8
- movs r0, 0x12
- bl sub_8113550
- b _08054132
- .align 2, 0
-_0805411C: .4byte gUnknown_2031DAC
-_08054120:
- ldr r0, _08054174 @ =gUnknown_2031DAC
- ldr r1, [r0]
- adds r1, 0xF8
- movs r0, 0xC
- bl sub_8113550
- movs r0, 0x15
- bl IncrementGameStat
-_08054132:
- ldr r0, _08054178 @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _0805415A
- ldr r4, _0805417C @ =gLinkPlayers
- bl GetMultiplayerId
- movs r1, 0x1
- eors r0, r1
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r4, 0x4
- adds r1, r4
- ldr r1, [r1]
- movs r0, 0x2
- bl sub_8144714
-_0805415A:
- bl sub_804C1C0
- bl sub_80DA3AC
- ldr r1, _08054180 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- ldrb r0, [r1]
- adds r0, 0x1
- movs r2, 0
- strb r0, [r1]
- b _080541F2
- .align 2, 0
-_08054174: .4byte gUnknown_2031DAC
-_08054178: .4byte gWirelessCommType
-_0805417C: .4byte gLinkPlayers
-_08054180: .4byte gMain
-_08054184:
- ldr r0, _0805419C @ =gUnknown_2031DAC
- ldr r1, [r0]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x5
- beq _08054194
- b _08054396
-_08054194:
- movs r0, 0x87
- lsls r0, 3
- adds r1, r2, r0
- b _08054340
- .align 2, 0
-_0805419C: .4byte gUnknown_2031DAC
-_080541A0:
- bl sub_80DA3D8
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _080541C4
- bl sav2_gender2_inplace_and_xFE
- ldr r0, _080541C0 @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- movs r1, 0x4
- strb r1, [r0]
- b _08054396
- .align 2, 0
-_080541C0: .4byte gMain
-_080541C4:
- ldr r0, _080541D8 @ =gUnknown_2031DAC
- ldr r0, [r0]
- str r1, [r0, 0x64]
- ldr r0, _080541DC @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r2
- movs r1, 0x33
- strb r1, [r0]
- b _08054396
- .align 2, 0
-_080541D8: .4byte gUnknown_2031DAC
-_080541DC: .4byte gMain
-_080541E0:
- bl sub_80DA40C
- ldr r0, _080541FC @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- movs r2, 0
- movs r1, 0x28
-_080541F0:
- strb r1, [r0]
-_080541F2:
- ldr r0, _08054200 @ =gUnknown_2031DAC
- ldr r0, [r0]
- str r2, [r0, 0x64]
- b _08054396
- .align 2, 0
-_080541FC: .4byte gMain
-_08054200: .4byte gUnknown_2031DAC
-_08054204:
- ldr r4, _08054238 @ =gUnknown_2031DAC
- ldr r1, [r4]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x32
- bhi _08054214
- b _08054396
-_08054214:
- bl GetMultiplayerId
- lsls r0, 24
- cmp r0, 0
- bne _0805423C
- bl Random
- ldr r4, [r4]
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1E
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- str r0, [r4, 0x64]
- b _08054242
- .align 2, 0
-_08054238: .4byte gUnknown_2031DAC
-_0805423C:
- ldr r1, [r4]
- movs r0, 0
- str r0, [r1, 0x64]
-_08054242:
- ldr r0, _08054250 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r2
- movs r1, 0x29
- strb r1, [r0]
- b _08054396
- .align 2, 0
-_08054250: .4byte gMain
-_08054254:
- ldr r0, _08054270 @ =gUnknown_2031DAC
- ldr r1, [r0]
- ldr r0, [r1, 0x64]
- cmp r0, 0
- bne _08054278
- bl sub_800AB9C
- ldr r0, _08054274 @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- movs r1, 0x2A
- strb r1, [r0]
- b _08054396
- .align 2, 0
-_08054270: .4byte gUnknown_2031DAC
-_08054274: .4byte gMain
-_08054278:
- subs r0, 0x1
- str r0, [r1, 0x64]
- b _08054396
-_0805427E:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- bne _0805428A
- b _08054396
-_0805428A:
- bl sub_80DA434
- ldr r0, _0805429C @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r2
- movs r1, 0x5
- strb r1, [r0]
- b _08054396
- .align 2, 0
-_0805429C: .4byte gMain
-_080542A0:
- ldr r0, _080542C0 @ =gUnknown_2031DAC
- ldr r1, [r0]
- ldr r0, [r1, 0x64]
- adds r0, 0x1
- str r0, [r1, 0x64]
- cmp r0, 0x3C
- bls _08054396
- movs r0, 0x87
- lsls r0, 3
- adds r1, r2, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- bl sub_800AB9C
- b _08054396
- .align 2, 0
-_080542C0: .4byte gUnknown_2031DAC
-_080542C4:
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08054396
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- b _08054338
-_080542E0:
- ldr r0, _080542FC @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08054396
- movs r0, 0x3
- bl FadeOutBGM
- ldr r1, _08054300 @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _08054340
- .align 2, 0
-_080542FC: .4byte gPaletteFade
-_08054300: .4byte gMain
-_08054304:
- bl IsBGMStopped
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08054396
- ldr r0, _08054328 @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _08054334
- ldr r0, _0805432C @ =gMain
- ldr r1, [r0, 0x8]
- ldr r0, _08054330 @ =sub_804C718
- cmp r1, r0
- bne _08054334
- bl sub_800AB9C
- b _08054338
- .align 2, 0
-_08054328: .4byte gWirelessCommType
-_0805432C: .4byte gMain
-_08054330: .4byte sub_804C718
-_08054334:
- bl sub_800AAC0
-_08054338:
- ldr r1, _08054348 @ =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
-_08054340:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _08054396
- .align 2, 0
-_08054348: .4byte gMain
-_0805434C:
- ldr r0, _08054374 @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _08054384
- ldr r1, [r2, 0x8]
- ldr r0, _08054378 @ =sub_804C718
- cmp r1, r0
- bne _08054384
- bl IsLinkRfuTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _08054396
- ldr r0, _0805437C @ =gSoftResetDisabled
- movs r1, 0
- strb r1, [r0]
- ldr r0, _08054380 @ =sub_80543C4
- bl SetMainCallback2
- b _08054396
- .align 2, 0
-_08054374: .4byte gWirelessCommType
-_08054378: .4byte sub_804C718
-_0805437C: .4byte gSoftResetDisabled
-_08054380: .4byte sub_80543C4
-_08054384:
- ldr r0, _080543B8 @ =gReceivedRemoteLinkPlayers
- ldrb r1, [r0]
- cmp r1, 0
- bne _08054396
- ldr r0, _080543BC @ =gSoftResetDisabled
- strb r1, [r0]
- ldr r0, _080543C0 @ =sub_80543C4
- bl SetMainCallback2
-_08054396:
- bl HasLinkErrorOccurred
- lsls r0, 24
- cmp r0, 0
- bne _080543A4
- bl RunTasks
-_080543A4:
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080543B8: .4byte gReceivedRemoteLinkPlayers
-_080543BC: .4byte gSoftResetDisabled
-_080543C0: .4byte sub_80543C4
- thumb_func_end sub_8053E8C
-
- thumb_func_start sub_80543C4
-sub_80543C4: @ 80543C4
- push {r4,r5,lr}
- ldr r0, _08054430 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _0805441A
- bl FreeAllWindowBuffers
- movs r0, 0x3
- bl GetBgTilemapBuffer
- bl Free
- movs r0, 0x1
- bl GetBgTilemapBuffer
- bl Free
- movs r0, 0
- bl GetBgTilemapBuffer
- bl Free
- bl FreeMonSpritesGfx
- ldr r4, _08054434 @ =gUnknown_2031DAC
- ldr r0, [r4]
- bl Free
- str r5, [r4]
- ldr r0, _08054438 @ =gWirelessCommType
- ldrb r0, [r0]
- cmp r0, 0
- beq _08054412
- bl DestroyWirelessStatusIndicatorSprite
-_08054412:
- ldr r0, _0805443C @ =gMain
- ldr r0, [r0, 0x8]
- bl SetMainCallback2
-_0805441A:
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl UpdatePaletteFade
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08054430: .4byte gPaletteFade
-_08054434: .4byte gUnknown_2031DAC
-_08054438: .4byte gWirelessCommType
-_0805443C: .4byte gMain
- thumb_func_end sub_80543C4
-
- thumb_func_start DoInGameTradeScene
-DoInGameTradeScene: @ 8054440
- push {lr}
- sub sp, 0x4
- bl ScriptContext2_Enable
- ldr r0, _0805446C @ =sub_8054470
- movs r1, 0xA
- bl CreateTask
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- bl HelpSystem_Disable
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0805446C: .4byte sub_8054470
- thumb_func_end DoInGameTradeScene
-
- thumb_func_start sub_8054470
-sub_8054470: @ 8054470
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0805449C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08054494
- ldr r0, _080544A0 @ =sub_80505CC
- bl SetMainCallback2
- ldr r1, _080544A4 @ =gFieldCallback
- ldr r0, _080544A8 @ =FieldCallback_ReturnToEventScript2
- str r0, [r1]
- adds r0, r4, 0
- bl DestroyTask
-_08054494:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0805449C: .4byte gPaletteFade
-_080544A0: .4byte sub_80505CC
-_080544A4: .4byte gFieldCallback
-_080544A8: .4byte FieldCallback_ReturnToEventScript2
- thumb_func_end sub_8054470
-
- thumb_func_start sub_80544AC
-sub_80544AC: @ 80544AC
- push {r4,r5,lr}
- movs r5, 0
- movs r4, 0
-_080544B2:
- ldr r0, _080544F0 @ =gUnknown_2031DA4
- ldrb r0, [r0, 0x1]
- movs r1, 0x6
- bl __umodsi3
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, _080544F4 @ =gEnemyParty
- adds r0, r1
- adds r1, r4, 0
- adds r1, 0x43
- bl GetMonData
- adds r0, r5, r0
- lsls r0, 24
- lsrs r5, r0, 24
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xB
- bls _080544B2
- cmp r5, 0
- beq _080544EA
- ldr r0, _080544F8 @ =0x0000083b
- bl FlagSet
-_080544EA:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080544F0: .4byte gUnknown_2031DA4
-_080544F4: .4byte gEnemyParty
-_080544F8: .4byte 0x0000083b
- thumb_func_end sub_80544AC
-
- thumb_func_start sub_80544FC
-sub_80544FC: @ 80544FC
- push {lr}
- bl sub_80504CC
- pop {r0}
- bx r0
- thumb_func_end sub_80544FC
-
- thumb_func_start sub_8054508
-sub_8054508: @ 8054508
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x14
- adds r5, r0, 0
- mov r8, r1
- adds r4, r2, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- movs r1, 0xFF
- bl FillWindowPixelBuffer
- ldr r2, _08054580 @ =gUnknown_2031DAC
- ldr r1, [r2]
- movs r6, 0x82
- lsls r6, 1
- adds r1, r6
- movs r3, 0
- movs r0, 0xF
- strb r0, [r1]
- ldr r0, [r2]
- ldr r7, _08054584 @ =0x00000105
- adds r1, r0, r7
- movs r0, 0x1
- strb r0, [r1]
- ldr r0, [r2]
- adds r7, 0x1
- adds r1, r0, r7
- movs r0, 0x6
- strb r0, [r1]
- str r3, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- ldr r0, [r2]
- adds r0, r6
- str r0, [sp, 0x8]
- lsls r4, 24
- asrs r4, 24
- str r4, [sp, 0xC]
- mov r0, r8
- str r0, [sp, 0x10]
- adds r0, r5, 0
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x2
- bl AddTextPrinterParameterized4
- adds r0, r5, 0
- movs r1, 0x3
- bl CopyWindowToVram
- add sp, 0x14
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08054580: .4byte gUnknown_2031DAC
-_08054584: .4byte 0x00000105
- thumb_func_end sub_8054508
-
- thumb_func_start c3_08054588
-c3_08054588: @ 8054588
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _080545C0 @ =gTasks+0x8
- adds r4, r0, r1
- ldr r1, _080545C4 @ =gUnknown_826D250
- movs r2, 0
- ldrsh r0, [r4, r2]
- lsls r0, 1
- adds r0, r1
- ldrb r0, [r0]
- lsls r1, r0, 4
- adds r2, r1, 0
- movs r3, 0x4
- ldrsh r0, [r4, r3]
- cmp r0, 0
- bne _080545CC
- movs r0, 0x80
- lsls r0, 1
- cmp r1, r0
- beq _080545D4
- lsls r0, r1, 1
- ldr r1, _080545C8 @ =gUnknown_826BB5C
- adds r0, r1
- b _080545D6
- .align 2, 0
-_080545C0: .4byte gTasks+0x8
-_080545C4: .4byte gUnknown_826D250
-_080545C8: .4byte gUnknown_826BB5C
-_080545CC:
- movs r0, 0x80
- lsls r0, 1
- cmp r1, r0
- bne _080545E4
-_080545D4:
- ldr r0, _080545E0 @ =gUnknown_826BF5C
-_080545D6:
- movs r1, 0x30
- movs r2, 0x20
- bl LoadPalette
- b _080545F2
- .align 2, 0
-_080545E0: .4byte gUnknown_826BF5C
-_080545E4:
- lsls r0, r2, 1
- ldr r1, _08054648 @ =gUnknown_826BD5C
- adds r0, r1
- movs r1, 0x30
- movs r2, 0x20
- bl LoadPalette
-_080545F2:
- ldr r0, _0805464C @ =gUnknown_826D250
- movs r2, 0
- ldrsh r1, [r4, r2]
- lsls r1, 1
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0
- bne _08054610
- movs r3, 0x2
- ldrsh r0, [r4, r3]
- cmp r0, 0
- bne _08054610
- movs r0, 0xBC
- bl PlaySE
-_08054610:
- movs r0, 0x2
- ldrsh r2, [r4, r0]
- ldr r1, _0805464C @ =gUnknown_826D250
- movs r3, 0
- ldrsh r0, [r4, r3]
- lsls r0, 1
- adds r1, 0x1
- adds r0, r1
- ldrb r0, [r0]
- cmp r2, r0
- bne _08054650
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- movs r0, 0
- strh r0, [r4, 0x2]
- movs r2, 0
- ldrsh r0, [r4, r2]
- lsls r0, 1
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0xFF
- bne _08054656
- adds r0, r5, 0
- bl DestroyTask
- b _08054656
- .align 2, 0
-_08054648: .4byte gUnknown_826BD5C
-_0805464C: .4byte gUnknown_826D250
-_08054650:
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
-_08054656:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end c3_08054588
-
- thumb_func_start c3_0805465C
-c3_0805465C: @ 805465C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- adds r6, r0, 0
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, _08054728 @ =gTasks+0x8
- adds r7, r0, r1
- movs r0, 0
- ldrsh r4, [r7, r0]
- cmp r4, 0
- bne _080546BC
- ldr r1, _0805472C @ =gUnknown_2031DAC
- ldr r3, [r1]
- ldr r5, _08054730 @ =0x0000010b
- adds r2, r3, r5
- movs r0, 0x78
- strb r0, [r2]
- subs r5, 0x2
- adds r2, r3, r5
- strb r0, [r2]
- ldr r0, [r1]
- movs r2, 0x85
- lsls r2, 1
- adds r0, r2
- strb r4, [r0]
- ldr r0, [r1]
- movs r3, 0x86
- lsls r3, 1
- adds r0, r3
- movs r1, 0xA0
- strb r1, [r0]
- movs r1, 0x80
- lsls r1, 6
- movs r0, 0
- bl SetGpuRegBits
- movs r0, 0x4A
- movs r1, 0x10
- bl SetGpuReg
- movs r0, 0x48
- movs r1, 0x13
- bl SetGpuReg
-_080546BC:
- ldr r4, _0805472C @ =gUnknown_2031DAC
- ldr r2, [r4]
- ldr r5, _08054730 @ =0x0000010b
- mov r8, r5
- adds r0, r2, r5
- ldrb r1, [r0]
- subs r5, 0x2
- adds r2, r5
- ldrb r0, [r2]
- lsls r0, 8
- orrs r1, r0
- movs r0, 0x40
- bl SetGpuReg
- ldr r2, [r4]
- movs r1, 0x86
- lsls r1, 1
- adds r0, r2, r1
- ldrb r1, [r0]
- movs r3, 0x85
- lsls r3, 1
- adds r0, r2, r3
- ldrb r0, [r0]
- lsls r0, 8
- orrs r1, r0
- movs r0, 0x44
- bl SetGpuReg
- ldrh r0, [r7]
- adds r0, 0x1
- strh r0, [r7]
- ldr r1, [r4]
- adds r1, r5
- ldrb r0, [r1]
- subs r0, 0x5
- strb r0, [r1]
- ldr r1, [r4]
- add r1, r8
- ldrb r0, [r1]
- adds r0, 0x5
- strb r0, [r1]
- ldr r0, [r4]
- adds r0, r5
- ldrb r0, [r0]
- cmp r0, 0x4F
- bhi _0805471E
- adds r0, r6, 0
- bl DestroyTask
-_0805471E:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08054728: .4byte gTasks+0x8
-_0805472C: .4byte gUnknown_2031DAC
-_08054730: .4byte 0x0000010b
- thumb_func_end c3_0805465C
-
- thumb_func_start sub_8054734
-sub_8054734: @ 8054734
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r7, r0, 0
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- ldr r1, _080547E8 @ =gTasks+0x8
- adds r6, r0, r1
- movs r1, 0
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _08054774
- ldr r1, _080547EC @ =gUnknown_2031DAC
- ldr r0, [r1]
- ldr r3, _080547F0 @ =0x00000109
- adds r2, r0, r3
- movs r0, 0x50
- strb r0, [r2]
- ldr r0, [r1]
- ldr r2, _080547F4 @ =0x0000010b
- adds r1, r0, r2
- movs r0, 0xA0
- strb r0, [r1]
- movs r0, 0x4A
- movs r1, 0x10
- bl SetGpuReg
- movs r0, 0x48
- movs r1, 0x13
- bl SetGpuReg
-_08054774:
- ldr r5, _080547EC @ =gUnknown_2031DAC
- ldr r0, [r5]
- ldr r3, _080547F4 @ =0x0000010b
- adds r1, r0, r3
- ldrb r1, [r1]
- ldr r4, _080547F0 @ =0x00000109
- adds r0, r4
- ldrb r0, [r0]
- lsls r0, 8
- orrs r1, r0
- movs r0, 0x40
- bl SetGpuReg
- ldr r2, [r5]
- movs r1, 0x86
- lsls r1, 1
- adds r0, r2, r1
- ldrb r1, [r0]
- movs r3, 0x85
- lsls r3, 1
- adds r0, r2, r3
- ldrb r0, [r0]
- lsls r0, 8
- orrs r1, r0
- movs r0, 0x44
- bl SetGpuReg
- ldr r0, [r5]
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x78
- beq _080547FC
- ldrh r0, [r6]
- adds r0, 0x1
- strh r0, [r6]
- ldr r0, [r5]
- adds r1, r0, r4
- ldrb r0, [r1]
- adds r0, 0x5
- strb r0, [r1]
- ldr r0, [r5]
- ldr r2, _080547F4 @ =0x0000010b
- adds r1, r0, r2
- ldrb r0, [r1]
- subs r0, 0x5
- strb r0, [r1]
- ldr r0, [r5]
- adds r0, r4
- ldrb r0, [r0]
- cmp r0, 0x73
- bls _0805480C
- ldr r2, _080547F8 @ =0x0000ffff
- movs r0, 0x8
- movs r1, 0
- bl BlendPalettes
- b _0805480C
- .align 2, 0
-_080547E8: .4byte gTasks+0x8
-_080547EC: .4byte gUnknown_2031DAC
-_080547F0: .4byte 0x00000109
-_080547F4: .4byte 0x0000010b
-_080547F8: .4byte 0x0000ffff
-_080547FC:
- movs r1, 0x80
- lsls r1, 6
- movs r0, 0
- bl ClearGpuRegBits
- adds r0, r7, 0
- bl DestroyTask
-_0805480C:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8054734
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/union_room_chat.s b/asm/union_room_chat.s
index 0d1640699..ae5381dda 100644
--- a/asm/union_room_chat.s
+++ b/asm/union_room_chat.s
@@ -1636,7 +1636,7 @@ _08129144:
lsls r0, 24
cmp r0, 0
bne _08129206
- bl sub_804C1C0
+ bl SetContinueGameWarpStatusToDynamicWarp
movs r0, 0
bl TrySavingData
ldr r0, _08129164 @ =gUnknown_203B0E0
@@ -1665,7 +1665,7 @@ _08129180:
bne _08129206
movs r0, 0x30
bl PlaySE
- bl sav2_gender2_inplace_and_xFE
+ bl ClearContinueGameWarpStatus2
ldr r0, _081291A0 @ =gUnknown_203B0E0
ldr r1, [r0]
movs r0, 0xA