summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
authorgolem galvanize <golemgalvanize@github.com>2018-04-30 20:41:17 -0400
committergolem galvanize <golemgalvanize@github.com>2018-04-30 20:41:17 -0400
commitf9331f15ef3db551fb288737d1070adfc79150b2 (patch)
treeb66d5e8ca41fb5b0a03c8e233c06ac60c8ffaa1d /asm
parent6a401b53867de87165f625510624c4a296dba34b (diff)
decompiled up to sub_80BFCF4
Diffstat (limited to 'asm')
-rw-r--r--asm/pokedex.s4052
1 files changed, 0 insertions, 4052 deletions
diff --git a/asm/pokedex.s b/asm/pokedex.s
index 67c7ca4a0..5dc45c766 100644
--- a/asm/pokedex.s
+++ b/asm/pokedex.s
@@ -5,4058 +5,6 @@
.text
- thumb_func_start sub_80BD8D0
-sub_80BD8D0: @ 80BD8D0
- push {r4-r7,lr}
- movs r4, 0
- ldr r0, =gUnknown_02039B4C
- mov r12, r0
- ldr r6, =gSprites
- ldr r5, =0x0000ffff
-_080BD8DC:
- mov r1, r12
- ldr r3, [r1]
- lsls r1, r4, 1
- ldr r2, =0x0000061e
- adds r0, r3, r2
- adds r0, r1
- ldrh r2, [r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r1, r0, r6
- movs r7, 0x24
- ldrsh r0, [r1, r7]
- cmp r0, 0
- bne _080BD90C
- movs r7, 0x26
- ldrsh r0, [r1, r7]
- cmp r0, 0
- bne _080BD90C
- cmp r2, r5
- beq _080BD90C
- ldr r1, =0x00000626
- adds r0, r3, r1
- strh r2, [r0]
-_080BD90C:
- adds r0, r4, 0x1
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0x3
- bls _080BD8DC
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BD8D0
-
- thumb_func_start sub_80BD930
-sub_80BD930: @ 80BD930
- push {r4-r6,lr}
- ldr r3, =gUnknown_02039B4C
- ldr r0, [r3]
- ldr r1, =0x0000060e
- adds r0, r1
- ldrh r4, [r0]
- ldr r2, =gMain
- ldrh r1, [r2, 0x2E]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _080BD9B8
- cmp r4, 0
- beq _080BD9B8
- adds r2, r4, 0
- adds r5, r3, 0
-_080BD950:
- ldr r0, [r5]
- ldr r1, =0x0000060c
- adds r0, r1
- ldrh r3, [r0]
- subs r3, 0x1
- lsls r3, 16
- lsrs r3, 16
- movs r0, 0x1
- adds r1, r2, 0
- movs r2, 0
- bl sub_80C0E0C
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r0, [r5]
- lsls r1, r2, 2
- adds r0, r1
- ldrb r0, [r0, 0x2]
- lsls r0, 31
- cmp r0, 0
- bne _080BD9A0
- cmp r2, 0
- bne _080BD950
-_080BD97E:
- ldr r0, =gUnknown_02039B4C
- ldr r1, [r0]
- ldr r0, =0x0000060e
- adds r2, r1, r0
- ldrh r0, [r2]
- cmp r0, r4
- bne _080BD9A4
- b _080BDA38
- .pool
-_080BD9A0:
- adds r4, r2, 0
- b _080BD97E
-_080BD9A4:
- strh r4, [r2]
- ldr r0, =0x0000062c
- adds r1, r0
- ldrb r0, [r1]
- subs r0, 0x10
- b _080BDA20
- .pool
-_080BD9B4:
- adds r4, r2, 0
- b _080BDA08
-_080BD9B8:
- ldrh r1, [r2, 0x2E]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080BDA38
- ldr r0, [r3]
- ldr r1, =0x0000060c
- adds r0, r1
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r4, r0
- bge _080BDA38
- adds r2, r4, 0
- adds r6, r3, 0
- adds r5, r1, 0
-_080BD9D6:
- ldr r0, [r6]
- adds r0, r5
- ldrh r3, [r0]
- subs r3, 0x1
- lsls r3, 16
- lsrs r3, 16
- movs r0, 0
- adds r1, r2, 0
- movs r2, 0
- bl sub_80C0E0C
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r1, [r6]
- lsls r0, r2, 2
- adds r0, r1, r0
- ldrb r0, [r0, 0x2]
- lsls r0, 31
- cmp r0, 0
- bne _080BD9B4
- adds r0, r1, r5
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r2, r0
- blt _080BD9D6
-_080BDA08:
- ldr r0, =gUnknown_02039B4C
- ldr r1, [r0]
- ldr r0, =0x0000060e
- adds r2, r1, r0
- ldrh r0, [r2]
- cmp r0, r4
- beq _080BDA38
- strh r4, [r2]
- ldr r0, =0x0000062c
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x10
-_080BDA20:
- strb r0, [r1]
- movs r0, 0x1
- b _080BDA3A
- .pool
-_080BDA38:
- movs r0, 0
-_080BDA3A:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80BD930
-
- thumb_func_start sub_80BDA40
-sub_80BDA40: @ 80BDA40
- push {r4-r7,lr}
- movs r5, 0
- ldr r6, =gUnknown_02039B4C
- ldr r7, =0x0000ffff
-_080BDA48:
- ldr r0, [r6]
- lsls r4, r5, 1
- ldr r1, =0x0000061e
- adds r0, r1
- adds r1, r0, r4
- ldrh r0, [r1]
- cmp r0, r7
- beq _080BDA6C
- bl sub_818D820
- ldr r1, [r6]
- ldr r0, =0x0000061e
- adds r1, r0
- adds r1, r4
- ldrh r2, [r1]
- adds r0, r7, 0
- orrs r0, r2
- strh r0, [r1]
-_080BDA6C:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0x3
- bls _080BDA48
- movs r0, 0
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80BDA40
-
- thumb_func_start sub_80BDA8C
-sub_80BDA8C: @ 80BDA8C
- push {lr}
- lsls r0, 16
- lsrs r2, r0, 16
- ldr r0, =0x00000181
- cmp r2, r0
- bhi _080BDAA8
- ldr r0, =gUnknown_02039B4C
- ldr r1, [r0]
- lsls r0, r2, 2
- adds r2, r1, r0
- ldrh r1, [r2]
- ldr r0, =0x0000ffff
- cmp r1, r0
- bne _080BDAB8
-_080BDAA8:
- ldr r0, =0x0000ffff
- b _080BDAC6
- .pool
-_080BDAB8:
- ldrb r0, [r2, 0x2]
- lsls r0, 31
- cmp r0, 0
- bne _080BDAC4
- movs r0, 0
- b _080BDAC6
-_080BDAC4:
- ldrh r0, [r2]
-_080BDAC6:
- pop {r1}
- bx r1
- thumb_func_end sub_80BDA8C
-
- thumb_func_start sub_80BDACC
-sub_80BDACC: @ 80BDACC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- lsls r2, 16
- lsrs r2, 16
- movs r6, 0
- ldr r0, =gUnknown_02039B4C
- mov r9, r0
- ldr r3, =0x0000ffff
- lsls r1, 16
-_080BDAE8:
- mov r4, r9
- ldr r0, [r4]
- lsls r7, r6, 1
- ldr r4, =0x0000061e
- adds r0, r4
- adds r0, r7
- ldrh r0, [r0]
- cmp r0, r3
- bne _080BDB60
- lsls r2, 16
- mov r0, r8
- asrs r1, 16
- asrs r2, 16
- adds r3, r6, 0
- bl sub_80C0E9C
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r0, =gSprites
- lsls r4, r5, 4
- adds r4, r5
- lsls r4, 2
- adds r4, r0
- ldrb r1, [r4, 0x1]
- movs r2, 0x4
- negs r2, r2
- adds r0, r2, 0
- ands r1, r0
- movs r0, 0x1
- orrs r1, r0
- strb r1, [r4, 0x1]
- ldrb r0, [r4, 0x5]
- movs r1, 0xC
- orrs r0, r1
- strb r0, [r4, 0x5]
- movs r0, 0
- strh r0, [r4, 0x2E]
- strh r6, [r4, 0x30]
- mov r0, r8
- bl NationalPokedexNumToSpecies
- strh r0, [r4, 0x32]
- mov r4, r9
- ldr r0, [r4]
- ldr r1, =0x0000061e
- adds r0, r1
- adds r0, r7
- strh r5, [r0]
- adds r0, r5, 0
- b _080BDB6C
- .pool
-_080BDB60:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x3
- bls _080BDAE8
- ldr r0, =0x0000ffff
-_080BDB6C:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80BDACC
-
- thumb_func_start sub_80BDB7C
-sub_80BDB7C: @ 80BDB7C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r8, r0
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r4, =gUnknown_0855D1AC
- adds r0, r4, 0
- movs r1, 0xB8
- movs r2, 0x4
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r1, =gSprites
- mov r10, r1
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0
- strh r1, [r0, 0x30]
- adds r0, r4, 0
- movs r1, 0xB8
- movs r2, 0x9C
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0x1
- strh r1, [r0, 0x30]
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r2, 0x2
- orrs r1, r2
- strb r1, [r0]
- ldr r0, =gUnknown_0855D194
- movs r1, 0xE6
- movs r2, 0x14
- movs r3, 0
- bl CreateSprite
- ldr r5, =gUnknown_0855D1C4
- adds r0, r5, 0
- movs r1, 0x10
- movs r2, 0x78
- movs r3, 0
- bl CreateSprite
- adds r0, r5, 0
- movs r1, 0x30
- movs r2, 0x78
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0x3
- bl StartSpriteAnim
- adds r0, r5, 0
- movs r1, 0x10
- movs r2, 0x90
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r4, r7, 4
- adds r4, r7
- lsls r4, 2
- add r4, r10
- adds r0, r4, 0
- movs r1, 0x2
- bl StartSpriteAnim
- movs r0, 0x80
- mov r9, r0
- mov r1, r9
- strh r1, [r4, 0x32]
- adds r0, r5, 0
- movs r1, 0x30
- movs r2, 0x90
- movs r3, 0
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r6, =gUnknown_0855D1DC
- adds r0, r6, 0
- movs r1, 0
- movs r2, 0x50
- movs r3, 0x2
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, r7, 4
- adds r1, r7
- lsls r1, 2
- add r1, r10
- ldrb r2, [r1, 0x1]
- movs r4, 0x4
- negs r4, r4
- adds r0, r4, 0
- ands r0, r2
- movs r5, 0x1
- orrs r0, r5
- strb r0, [r1, 0x1]
- ldrb r2, [r1, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r2
- movs r2, 0x3C
- orrs r0, r2
- strb r0, [r1, 0x3]
- movs r0, 0x1E
- strh r0, [r1, 0x2E]
- movs r0, 0
- strh r0, [r1, 0x30]
- adds r0, r6, 0
- movs r1, 0
- movs r2, 0x50
- movs r3, 0x2
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, r7, 4
- adds r1, r7
- lsls r1, 2
- add r1, r10
- ldrb r0, [r1, 0x1]
- ands r4, r0
- orrs r4, r5
- strb r4, [r1, 0x1]
- ldrb r0, [r1, 0x3]
- movs r2, 0x3E
- orrs r0, r2
- strb r0, [r1, 0x3]
- movs r0, 0x1F
- strh r0, [r1, 0x2E]
- mov r0, r9
- strh r0, [r1, 0x30]
- mov r1, r8
- cmp r1, 0
- beq _080BDCCC
- b _080BE414
-_080BDCCC:
- bl IsNationalPokedexEnabled
- cmp r0, 0
- beq _080BDCD6
- b _080BDF4C
-_080BDCD6:
- ldr r4, =gUnknown_0855D1F4
- adds r0, r4, 0
- movs r1, 0x20
- movs r2, 0x28
- movs r3, 0x1
- bl CreateSprite
- adds r0, r4, 0
- movs r1, 0x20
- movs r2, 0x48
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0x1
- bl StartSpriteAnim
- movs r0, 0
- mov r8, r0
- ldr r0, =gUnknown_0855D224
- movs r1, 0x18
- movs r2, 0x30
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000061a
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- mov r1, r10
- adds r4, r0, r1
- lsls r1, r5, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- cmp r5, 0
- beq _080BDD6C
- movs r0, 0x1
- mov r8, r0
- b _080BDD78
- .pool
-_080BDD6C:
- adds r0, r4, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BDD78:
- ldr r0, =gUnknown_0855D224
- movs r1, 0x20
- movs r2, 0x30
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000061a
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- bne _080BDDB0
- mov r0, r8
- cmp r0, 0
- beq _080BDDD4
-_080BDDB0:
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- lsls r1, r5, 24
- lsrs r1, 24
- bl StartSpriteAnim
- b _080BDDE8
- .pool
-_080BDDD4:
- ldr r1, =gSprites
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BDDE8:
- ldr r6, =gUnknown_0855D224
- adds r0, r6, 0
- movs r1, 0x28
- movs r2, 0x30
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r5, =gUnknown_02039B4C
- ldr r0, [r5]
- ldr r1, =0x0000061a
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- adds r1, r0, 0
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r4, =gSprites
- adds r0, r4
- lsls r1, 24
- lsrs r1, 24
- bl StartSpriteAnim
- movs r0, 0
- mov r8, r0
- adds r0, r6, 0
- movs r1, 0x18
- movs r2, 0x50
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, [r5]
- ldr r1, =0x0000061c
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r4, r0, r4
- lsls r1, r5, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- cmp r5, 0
- beq _080BDE80
- movs r0, 0x1
- mov r8, r0
- b _080BDE8C
- .pool
-_080BDE80:
- adds r0, r4, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BDE8C:
- ldr r0, =gUnknown_0855D224
- movs r1, 0x20
- movs r2, 0x50
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000061c
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- bne _080BDEC4
- mov r0, r8
- cmp r0, 0
- beq _080BDEE8
-_080BDEC4:
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- lsls r1, r5, 24
- lsrs r1, 24
- bl StartSpriteAnim
- b _080BDEFC
- .pool
-_080BDEE8:
- ldr r1, =gSprites
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BDEFC:
- ldr r0, =gUnknown_0855D224
- movs r1, 0x28
- movs r2, 0x50
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000061c
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- adds r1, r0, 0
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r2, =gSprites
- adds r0, r2
- lsls r1, 24
- lsrs r1, 24
- bl StartSpriteAnim
- b _080BE3E2
- .pool
-_080BDF4C:
- ldr r4, =gUnknown_0855D1F4
- adds r0, r4, 0
- movs r1, 0x20
- movs r2, 0x28
- movs r3, 0x1
- bl CreateSprite
- adds r0, r4, 0
- movs r1, 0x20
- movs r2, 0x4C
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0x1
- bl StartSpriteAnim
- ldr r4, =gUnknown_0855D20C
- adds r0, r4, 0
- movs r1, 0x11
- movs r2, 0x2D
- movs r3, 0x1
- bl CreateSprite
- adds r0, r4, 0
- movs r1, 0x11
- movs r2, 0x37
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0x1
- bl StartSpriteAnim
- adds r0, r4, 0
- movs r1, 0x11
- movs r2, 0x51
- movs r3, 0x1
- bl CreateSprite
- adds r0, r4, 0
- movs r1, 0x11
- movs r2, 0x5B
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
- movs r1, 0x1
- bl StartSpriteAnim
- movs r0, 0
- bl GetHoennPokedexCount
- lsls r0, 16
- lsrs r6, r0, 16
- movs r0, 0
- mov r8, r0
- ldr r0, =gUnknown_0855D23C
- movs r1, 0x28
- movs r2, 0x2D
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- adds r0, r6, 0
- movs r1, 0x64
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- mov r1, r10
- adds r4, r0, r1
- lsls r1, r5, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- cmp r5, 0
- beq _080BE024
- movs r0, 0x1
- mov r8, r0
- b _080BE030
- .pool
-_080BE024:
- adds r0, r4, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BE030:
- ldr r0, =gUnknown_0855D23C
- movs r1, 0x30
- movs r2, 0x2D
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- adds r0, r6, 0
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- bne _080BE060
- mov r1, r8
- cmp r1, 0
- beq _080BE07C
-_080BE060:
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- lsls r1, r5, 24
- lsrs r1, 24
- bl StartSpriteAnim
- b _080BE090
- .pool
-_080BE07C:
- ldr r1, =gSprites
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BE090:
- ldr r5, =gUnknown_0855D23C
- adds r0, r5, 0
- movs r1, 0x38
- movs r2, 0x2D
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- adds r0, r6, 0
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- adds r1, r0, 0
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r4, =gSprites
- adds r0, r4
- lsls r1, 24
- lsrs r1, 24
- bl StartSpriteAnim
- movs r0, 0
- mov r8, r0
- adds r0, r5, 0
- movs r1, 0x28
- movs r2, 0x37
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000061a
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r4, r0, r4
- lsls r1, r5, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- cmp r5, 0
- beq _080BE11C
- movs r0, 0x1
- mov r8, r0
- b _080BE128
- .pool
-_080BE11C:
- adds r0, r4, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BE128:
- ldr r0, =gUnknown_0855D23C
- movs r1, 0x30
- movs r2, 0x37
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000061a
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- bne _080BE160
- mov r0, r8
- cmp r0, 0
- beq _080BE184
-_080BE160:
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- lsls r1, r5, 24
- lsrs r1, 24
- bl StartSpriteAnim
- b _080BE198
- .pool
-_080BE184:
- ldr r1, =gSprites
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BE198:
- ldr r5, =gUnknown_0855D23C
- adds r0, r5, 0
- movs r1, 0x38
- movs r2, 0x37
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000061a
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- adds r1, r0, 0
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r4, =gSprites
- adds r0, r4
- lsls r1, 24
- lsrs r1, 24
- bl StartSpriteAnim
- movs r0, 0x1
- bl GetHoennPokedexCount
- lsls r0, 16
- lsrs r6, r0, 16
- movs r0, 0
- mov r8, r0
- adds r0, r5, 0
- movs r1, 0x28
- movs r2, 0x51
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- adds r0, r6, 0
- movs r1, 0x64
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r4, r0, r4
- lsls r1, r5, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- cmp r5, 0
- beq _080BE230
- movs r1, 0x1
- mov r8, r1
- b _080BE23C
- .pool
-_080BE230:
- adds r0, r4, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BE23C:
- ldr r0, =gUnknown_0855D23C
- movs r1, 0x30
- movs r2, 0x51
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- adds r0, r6, 0
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- bne _080BE26C
- mov r0, r8
- cmp r0, 0
- beq _080BE288
-_080BE26C:
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- lsls r1, r5, 24
- lsrs r1, 24
- bl StartSpriteAnim
- b _080BE29C
- .pool
-_080BE288:
- ldr r1, =gSprites
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BE29C:
- ldr r5, =gUnknown_0855D23C
- adds r0, r5, 0
- movs r1, 0x38
- movs r2, 0x51
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- adds r0, r6, 0
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- adds r1, r0, 0
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r4, =gSprites
- adds r0, r4
- lsls r1, 24
- lsrs r1, 24
- bl StartSpriteAnim
- movs r1, 0
- mov r8, r1
- adds r0, r5, 0
- movs r1, 0x28
- movs r2, 0x5B
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000061c
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r4, r0, r4
- lsls r1, r5, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- cmp r5, 0
- beq _080BE328
- movs r0, 0x1
- mov r8, r0
- b _080BE334
- .pool
-_080BE328:
- adds r0, r4, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BE334:
- ldr r0, =gUnknown_0855D23C
- movs r1, 0x30
- movs r2, 0x5B
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000061c
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __udivsi3
- lsls r0, 16
- lsrs r5, r0, 16
- cmp r5, 0
- bne _080BE36C
- mov r0, r8
- cmp r0, 0
- beq _080BE390
-_080BE36C:
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r1, =gSprites
- adds r0, r1
- lsls r1, r5, 24
- lsrs r1, 24
- bl StartSpriteAnim
- b _080BE3A4
- .pool
-_080BE390:
- ldr r1, =gSprites
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BE3A4:
- ldr r0, =gUnknown_0855D23C
- movs r1, 0x38
- movs r2, 0x5B
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000061c
- adds r0, r1
- ldrh r0, [r0]
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xA
- bl __umodsi3
- adds r1, r0, 0
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- ldr r2, =gSprites
- adds r0, r2
- lsls r1, 24
- lsrs r1, 24
- bl StartSpriteAnim
-_080BE3E2:
- ldr r0, =gUnknown_0855D254
- movs r1, 0x88
- movs r2, 0x60
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r1, =gSprites
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- adds r0, r1
- b _080BE42C
- .pool
-_080BE414:
- ldr r0, =gUnknown_0855D254
- movs r1, 0x88
- movs r2, 0x50
- movs r3, 0x1
- bl CreateSprite
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 4
- adds r0, r7
- lsls r0, 2
- add r0, r10
-_080BE42C:
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BDB7C
-
- thumb_func_start nullsub_38
-nullsub_38: @ 80BE448
- bx lr
- thumb_func_end nullsub_38
-
- thumb_func_start sub_80BE44C
-sub_80BE44C: @ 80BE44C
- push {lr}
- adds r1, r0, 0
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r2, =0x0000064a
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080BE464
- adds r0, r1, 0
- bl DestroySprite
-_080BE464:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BE44C
-
- thumb_func_start sub_80BE470
-sub_80BE470: @ 80BE470
- push {lr}
- adds r2, r0, 0
- ldrb r1, [r2, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x5]
- ldrb r1, [r2, 0x1]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x1]
- movs r0, 0
- strh r0, [r2, 0x24]
- strh r0, [r2, 0x26]
- ldr r1, [r2, 0x20]
- ldr r0, =0x00380030
- cmp r1, r0
- beq _080BE4D4
- ldrh r1, [r2, 0x20]
- movs r3, 0x20
- ldrsh r0, [r2, r3]
- cmp r0, 0x30
- ble _080BE4A4
- subs r0, r1, 0x1
- strh r0, [r2, 0x20]
-_080BE4A4:
- ldrh r1, [r2, 0x20]
- movs r3, 0x20
- ldrsh r0, [r2, r3]
- cmp r0, 0x2F
- bgt _080BE4B2
- adds r0, r1, 0x1
- strh r0, [r2, 0x20]
-_080BE4B2:
- ldrh r1, [r2, 0x22]
- movs r3, 0x22
- ldrsh r0, [r2, r3]
- cmp r0, 0x38
- ble _080BE4C0
- subs r0, r1, 0x1
- strh r0, [r2, 0x22]
-_080BE4C0:
- ldrh r1, [r2, 0x22]
- movs r3, 0x22
- ldrsh r0, [r2, r3]
- cmp r0, 0x37
- bgt _080BE4D8
- adds r0, r1, 0x1
- strh r0, [r2, 0x22]
- b _080BE4D8
- .pool
-_080BE4D4:
- ldr r0, =nullsub_38
- str r0, [r2, 0x1C]
-_080BE4D8:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BE470
-
- thumb_func_start sub_80BE4E0
-sub_80BE4E0: @ 80BE4E0
- push {r4-r7,lr}
- sub sp, 0x4
- adds r4, r0, 0
- ldrh r0, [r4, 0x30]
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r7, =gUnknown_02039B4C
- ldr r1, [r7]
- ldr r2, =0x0000064a
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080BE520
- cmp r0, 0x3
- beq _080BE520
- lsls r5, r6, 1
- ldr r4, =0x0000061e
- adds r0, r1, r4
- adds r0, r5
- ldrh r0, [r0]
- bl sub_818D820
- ldr r0, [r7]
- adds r0, r4
- adds r0, r5
- b _080BE5EC
- .pool
-_080BE520:
- ldr r2, =gSineTable
- ldrh r0, [r4, 0x38]
- lsls r0, 24
- lsrs r0, 23
- adds r0, r2
- movs r3, 0
- ldrsh r1, [r0, r3]
- movs r0, 0x4C
- muls r0, r1
- cmp r0, 0
- bge _080BE538
- adds r0, 0xFF
-_080BE538:
- asrs r0, 8
- strh r0, [r4, 0x26]
- movs r1, 0x38
- ldrsh r0, [r4, r1]
- adds r0, 0x40
- lsls r0, 1
- adds r0, r2
- movs r2, 0
- ldrsh r1, [r0, r2]
- movs r0, 0x80
- lsls r0, 9
- bl __divsi3
- adds r2, r0, 0
- ldr r0, =0x0000ffff
- cmp r2, r0
- bls _080BE55C
- adds r2, r0, 0
-_080BE55C:
- ldrh r0, [r4, 0x30]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x80
- lsls r1, 1
- lsls r2, 16
- lsrs r2, 16
- str r2, [sp]
- movs r2, 0
- movs r3, 0
- bl SetOamMatrix
- adds r1, r6, 0x1
- movs r0, 0x1F
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r4, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r4, 0x3]
- ldrh r0, [r4, 0x38]
- adds r0, 0x3F
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x7E
- bhi _080BE5B4
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x5
- negs r1, r1
- ands r1, r0
- strb r1, [r2]
- movs r0, 0x1
- strh r0, [r4, 0x2E]
- b _080BE5C0
- .pool
-_080BE5B4:
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
-_080BE5C0:
- ldrh r0, [r4, 0x38]
- adds r0, 0x3F
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x7E
- bls _080BE5F0
- movs r3, 0x2E
- ldrsh r0, [r4, r3]
- cmp r0, 0
- beq _080BE5F0
- ldr r5, =gUnknown_02039B4C
- ldr r0, [r5]
- lsls r6, 1
- ldr r4, =0x0000061e
- adds r0, r4
- adds r0, r6
- ldrh r0, [r0]
- bl sub_818D820
- ldr r0, [r5]
- adds r0, r4
- adds r0, r6
-_080BE5EC:
- ldr r1, =0x0000ffff
- strh r1, [r0]
-_080BE5F0:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BE4E0
-
- thumb_func_start sub_80BE604
-sub_80BE604: @ 80BE604
- push {r4,lr}
- adds r4, r0, 0
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000064a
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080BE62C
- cmp r0, 0x3
- beq _080BE62C
- adds r0, r4, 0
- bl DestroySprite
- b _080BE648
- .pool
-_080BE62C:
- ldr r2, [r1]
- ldr r1, =0x0000060e
- adds r0, r2, r1
- ldrh r1, [r0]
- lsls r0, r1, 4
- subs r0, r1
- lsls r0, 3
- ldr r1, =0x0000060c
- adds r2, r1
- ldrh r1, [r2]
- subs r1, 0x1
- bl __divsi3
- strh r0, [r4, 0x26]
-_080BE648:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BE604
-
- thumb_func_start sub_80BE658
-sub_80BE658: @ 80BE658
- push {r4,r5,lr}
- adds r3, r0, 0
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000064a
- adds r0, r2
- ldrb r0, [r0]
- adds r5, r1, 0
- cmp r0, 0
- beq _080BE680
- cmp r0, 0x3
- beq _080BE680
- adds r0, r3, 0
- bl DestroySprite
- b _080BE750
- .pool
-_080BE680:
- movs r1, 0x30
- ldrsh r0, [r3, r1]
- cmp r0, 0
- beq _080BE6C2
- ldr r0, [r5]
- ldr r2, =0x0000060e
- adds r1, r0, r2
- ldrh r1, [r1]
- subs r2, 0x2
- adds r0, r2
- ldrh r0, [r0]
- subs r0, 0x1
- cmp r1, r0
- bne _080BE6AC
- adds r0, r3, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- b _080BE6B8
- .pool
-_080BE6AC:
- adds r0, r3, 0
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
-_080BE6B8:
- strb r1, [r0]
- adds r2, r0, 0
- ldrh r1, [r3, 0x32]
- lsls r0, r1, 24
- b _080BE6F8
-_080BE6C2:
- ldr r0, [r5]
- ldr r1, =0x0000060e
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, 0
- bne _080BE6E0
- adds r0, r3, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- b _080BE6EC
- .pool
-_080BE6E0:
- adds r0, r3, 0
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
-_080BE6EC:
- strb r1, [r0]
- adds r2, r0, 0
- ldrh r1, [r3, 0x32]
- adds r0, r1, 0
- subs r0, 0x80
- lsls r0, 24
-_080BE6F8:
- lsrs r0, 24
- adds r4, r1, 0
- ldr r1, =gSineTable
- lsls r0, 1
- adds r0, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bge _080BE70C
- adds r0, 0x3F
-_080BE70C:
- asrs r0, 6
- strh r0, [r3, 0x26]
- adds r0, r4, 0
- adds r0, 0x8
- strh r0, [r3, 0x32]
- ldr r1, [r5]
- ldr r3, =0x0000064f
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, 0
- bne _080BE748
- adds r3, 0x3
- adds r0, r1, r3
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _080BE748
- ldrb r1, [r2]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- bne _080BE748
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- b _080BE74E
- .pool
-_080BE748:
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
-_080BE74E:
- strb r0, [r2]
-_080BE750:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80BE658
-
- thumb_func_start sub_80BE758
-sub_80BE758: @ 80BE758
- push {lr}
- adds r1, r0, 0
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r2, =0x0000064a
- adds r0, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080BE774
- cmp r0, 0x3
- beq _080BE774
- adds r0, r1, 0
- bl DestroySprite
-_080BE774:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BE758
-
- thumb_func_start sub_80BE780
-sub_80BE780: @ 80BE780
- push {r4-r7,lr}
- sub sp, 0x4
- adds r6, r0, 0
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000064a
- adds r0, r2
- ldrb r0, [r0]
- adds r7, r1, 0
- cmp r0, 0
- beq _080BE7AC
- cmp r0, 0x3
- beq _080BE7AC
- adds r0, r6, 0
- bl DestroySprite
- b _080BE824
- .pool
-_080BE7AC:
- ldr r0, [r7]
- ldr r5, =0x0000062c
- adds r0, r5
- ldrb r1, [r0]
- ldrh r0, [r6, 0x30]
- adds r1, r0
- lsls r1, 24
- lsrs r1, 24
- ldr r4, =gSineTable
- lsls r0, r1, 1
- adds r0, r4
- ldrh r3, [r0]
- adds r1, 0x40
- lsls r1, 1
- adds r1, r4
- ldrh r0, [r6, 0x2E]
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r1]
- lsls r3, 16
- lsrs r2, r3, 16
- negs r3, r3
- lsrs r3, 16
- str r1, [sp]
- bl SetOamMatrix
- ldr r1, [r7]
- adds r1, r5
- ldrh r0, [r6, 0x30]
- adds r0, 0x40
- ldrb r1, [r1]
- adds r0, r1
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 1
- adds r1, r4
- ldrh r3, [r1]
- adds r0, 0x40
- lsls r0, 1
- adds r0, r4
- movs r2, 0
- ldrsh r1, [r0, r2]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- cmp r0, 0
- bge _080BE80C
- adds r0, 0xFF
-_080BE80C:
- asrs r0, 8
- strh r0, [r6, 0x24]
- lsls r1, r3, 16
- asrs r1, 16
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- cmp r0, 0
- bge _080BE820
- adds r0, 0xFF
-_080BE820:
- asrs r0, 8
- strh r0, [r6, 0x26]
-_080BE824:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BE780
-
- thumb_func_start sub_80BE834
-sub_80BE834: @ 80BE834
- push {r4,lr}
- adds r3, r0, 0
- ldr r1, =gUnknown_02039B4C
- ldr r0, [r1]
- ldr r2, =0x0000064a
- adds r0, r2
- ldrb r2, [r0]
- cmp r2, 0
- beq _080BE85C
- cmp r2, 0x3
- beq _080BE85C
- adds r0, r3, 0
- bl DestroySprite
- b _080BE8D4
- .pool
-_080BE85C:
- ldr r4, [r1]
- ldr r1, =0x0000064a
- adds r0, r4, r1
- ldrb r0, [r0]
- movs r1, 0x60
- cmp r0, 0
- bne _080BE86C
- movs r1, 0x50
-_080BE86C:
- ldr r2, =0x0000064f
- adds r0, r4, r2
- ldrb r0, [r0]
- cmp r0, 0
- beq _080BE8C8
- adds r2, 0x3
- adds r0, r4, r2
- movs r2, 0
- ldrsh r0, [r0, r2]
- cmp r0, r1
- bne _080BE8C8
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- movs r1, 0xCA
- lsls r1, 3
- adds r0, r4, r1
- ldrh r0, [r0]
- lsls r0, 4
- strh r0, [r3, 0x26]
- ldr r1, =gSineTable
- ldrh r2, [r3, 0x32]
- lsls r0, r2, 24
- lsrs r0, 23
- adds r0, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bge _080BE8B0
- adds r0, 0x3F
-_080BE8B0:
- asrs r0, 6
- strh r0, [r3, 0x24]
- adds r0, r2, 0
- adds r0, 0x8
- strh r0, [r3, 0x32]
- b _080BE8D4
- .pool
-_080BE8C8:
- adds r0, r3, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
-_080BE8D4:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80BE834
-
- thumb_func_start sub_80BE8DC
-sub_80BE8DC: @ 80BE8DC
- push {r4,r5,lr}
- sub sp, 0x18
- adds r5, r1, 0
- adds r3, r2, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r3, 24
- lsrs r3, 24
- add r1, sp, 0x14
- movs r4, 0
- strb r4, [r1]
- adds r2, r1, 0
- movs r1, 0xF
- strb r1, [r2, 0x1]
- movs r1, 0x3
- strb r1, [r2, 0x2]
- str r4, [sp]
- str r4, [sp, 0x4]
- str r2, [sp, 0x8]
- subs r1, 0x4
- str r1, [sp, 0xC]
- str r0, [sp, 0x10]
- movs r0, 0
- movs r1, 0x1
- adds r2, r5, 0
- bl AddTextPrinterParameterized2
- add sp, 0x18
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80BE8DC
-
- thumb_func_start sub_80BE91C
-sub_80BE91C: @ 80BE91C
- push {r4,r5,lr}
- lsls r4, r1, 24
- lsrs r4, 24
- ldr r1, =gUnknown_02039B54
- str r0, [r1]
- ldr r0, =sub_80BEA24
- movs r1, 0
- bl CreateTask
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r2, 0
- strh r2, [r0, 0x8]
- movs r1, 0x1
- strh r1, [r0, 0xA]
- strh r2, [r0, 0xC]
- strh r2, [r0, 0xE]
- strh r4, [r0, 0x10]
- movs r1, 0xFF
- strh r1, [r0, 0x12]
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_0856E630
- movs r0, 0
- movs r2, 0x4
- bl InitBgsFromTemplates
- movs r4, 0x80
- lsls r4, 4
- adds r0, r4, 0
- bl AllocZeroed
- adds r1, r0, 0
- movs r0, 0x3
- bl SetBgTilemapBuffer
- adds r0, r4, 0
- bl AllocZeroed
- adds r1, r0, 0
- movs r0, 0x2
- bl SetBgTilemapBuffer
- adds r0, r4, 0
- bl AllocZeroed
- adds r1, r0, 0
- movs r0, 0x1
- bl SetBgTilemapBuffer
- adds r0, r4, 0
- bl AllocZeroed
- adds r1, r0, 0
- movs r0, 0
- bl SetBgTilemapBuffer
- ldr r0, =gUnknown_0856E640
- bl InitWindows
- bl DeactivateAllTextPrinters
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80BE91C
-
- thumb_func_start sub_80BE9C4
-sub_80BE9C4: @ 80BE9C4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r2, 0x8
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bne _080BE9F0
- ldr r1, [r1]
- ldr r0, =sub_80BEDF4
- cmp r1, r0
- bne _080BE9F0
- movs r0, 0
- b _080BE9F2
- .pool
-_080BE9F0:
- movs r0, 0x1
-_080BE9F2:
- pop {r1}
- bx r1
- thumb_func_end sub_80BE9C4
-
- thumb_func_start sub_80BE9F8
-sub_80BE9F8: @ 80BE9F8
- adds r2, r0, 0
- lsls r0, r1, 24
- lsrs r0, 24
- ldr r1, =gUnknown_02039B54
- str r2, [r1]
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- movs r3, 0
- movs r2, 0x1
- strh r2, [r1, 0x8]
- strh r3, [r1, 0xA]
- strh r3, [r1, 0xC]
- strh r3, [r1, 0xE]
- bx lr
- .pool
- thumb_func_end sub_80BE9F8
-
- thumb_func_start sub_80BEA24
-sub_80BEA24: @ 80BEA24
- push {r4-r6,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r5, r1, 0
- cmp r0, 0xA
- bhi _080BEA7C
- lsls r0, 2
- ldr r1, =_080BEA50
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080BEA50:
- .4byte _080BEA7C
- .4byte _080BEAF0
- .4byte _080BEB50
- .4byte _080BEB90
- .4byte _080BEB98
- .4byte _080BEC08
- .4byte _080BEC60
- .4byte _080BECBC
- .4byte _080BED04
- .4byte _080BED5E
- .4byte _080BED7C
-_080BEA7C:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080BEA8A
- b _080BEDA0
-_080BEA8A:
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r3, =0x0000064a
- adds r0, r3
- movs r6, 0x1
- strb r6, [r0]
- ldr r1, =gUnknown_030060B4
- ldr r0, [r5, 0xC]
- str r0, [r1]
- movs r0, 0
- bl SetVBlankCallback
- movs r2, 0
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r1, r0, r1
- movs r3, 0xA
- ldrsh r0, [r1, r3]
- cmp r0, 0
- beq _080BEABA
- movs r2, 0x80
- lsls r2, 5
-_080BEABA:
- movs r3, 0xC
- ldrsh r0, [r1, r3]
- cmp r0, 0
- beq _080BEACA
- movs r1, 0x80
- lsls r1, 2
- adds r0, r1, 0
- orrs r2, r0
-_080BEACA:
- adds r0, r2, 0
- bl sub_80C09B0
- movs r2, 0x87
- lsls r2, 3
- adds r0, r5, r2
- strb r6, [r0]
- b _080BEDA0
- .pool
-_080BEAF0:
- ldr r1, =gPokedexMenu_Gfx
- movs r2, 0x80
- lsls r2, 6
- movs r0, 0
- str r0, [sp]
- movs r0, 0x3
- movs r3, 0
- bl copy_decompressed_tile_data_to_vram_autofree
- ldr r1, =gUnknown_08DC3080
- movs r0, 0x3
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- movs r0, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x1
- bl PutWindowTilemap
- ldr r0, =gUnknown_02039B54
- ldr r0, [r0]
- ldrh r1, [r0]
- movs r0, 0x1
- bl sub_80C0D30
- movs r0, 0x1
- movs r1, 0x2
- bl CopyWindowToVram
- ldr r1, =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _080BED70
- .pool
-_080BEB50:
- movs r0, 0xD
- bl sub_80BFCDC
- ldr r4, =gUnknown_02039B4C
- ldr r0, [r4]
- ldr r1, =0x0000064d
- adds r0, r1
- ldrb r0, [r0]
- movs r1, 0xD
- bl sub_80BFD0C
- ldr r0, [r4]
- ldr r2, =0x0000064c
- adds r0, r2
- ldrb r0, [r0]
- lsls r0, 31
- lsrs r0, 31
- bl sub_80BC844
- ldr r1, =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _080BED70
- .pool
-_080BEB90:
- movs r0, 0x87
- lsls r0, 3
- adds r1, r5, r0
- b _080BED70
-_080BEB98:
- ldr r4, =gUnknown_02039B54
- ldr r3, [r4]
- ldrh r0, [r3]
- ldr r1, =gUnknown_02039B4C
- ldr r1, [r1]
- ldr r2, =0x00000612
- adds r1, r2
- ldrh r2, [r1]
- negs r1, r2
- orrs r1, r2
- lsrs r1, 31
- ldr r2, [r3]
- lsls r2, 14
- lsrs r2, 31
- movs r3, 0
- bl sub_80C020C
- ldr r0, [r4]
- ldrb r1, [r0, 0x2]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _080BEBD0
- ldr r0, =gPlttBufferUnfaded + 2
- movs r1, 0x31
- movs r2, 0x1E
- bl LoadPalette
-_080BEBD0:
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- movs r0, 0x2
- bl CopyBgTilemapBufferToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
- ldr r1, =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _080BED70
- .pool
-_080BEC08:
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r4, r1, r0
- movs r1, 0xA
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080BEC44
- ldr r0, =gUnknown_02039B54
- ldr r0, [r0]
- ldrh r0, [r0]
- movs r1, 0x30
- movs r2, 0x38
- movs r3, 0
- bl sub_80C0E9C
- strh r0, [r4, 0x10]
- ldr r2, =gSprites
- movs r3, 0x10
- ldrsh r0, [r4, r3]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x5]
-_080BEC44:
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _080BED70
- .pool
-_080BEC60:
- movs r3, 0
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r2, 0xC
- ldrsh r0, [r1, r2]
- cmp r0, 0
- beq _080BEC76
- movs r3, 0x14
-_080BEC76:
- movs r2, 0xA
- ldrsh r0, [r1, r2]
- cmp r0, 0
- beq _080BEC98
- ldr r2, =gSprites
- movs r0, 0x10
- ldrsh r1, [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
- orrs r3, r0
-_080BEC98:
- mvns r0, r3
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r0, =gUnknown_030060B4
- ldr r0, [r0]
- bl SetVBlankCallback
- b _080BED68
- .pool
-_080BECBC:
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0
- bl HideBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
- ldr r1, =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _080BED70
- .pool
-_080BED04:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080BEDA0
- movs r0, 0x87
- lsls r0, 3
- adds r2, r5, r0
- ldrb r0, [r2]
- adds r3, r0, 0x1
- strb r3, [r2]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0xE
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bne _080BED58
- bl StopCryAndClearCrySongs
- ldr r0, =gUnknown_02039B54
- ldr r0, [r0]
- ldrh r0, [r0]
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0
- movs r2, 0x7D
- movs r3, 0xA
- bl PlayCry2
- b _080BEDA0
- .pool
-_080BED58:
- adds r0, r3, 0x1
- strb r0, [r2]
- b _080BEDA0
-_080BED5E:
- bl IsCryPlayingOrClearCrySongs
- lsls r0, 24
- cmp r0, 0
- bne _080BEDA0
-_080BED68:
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
-_080BED70:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _080BEDA0
- .pool
-_080BED7C:
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r2, 0
- movs r1, 0
- strh r1, [r0, 0x8]
- strh r1, [r0, 0xA]
- movs r1, 0x1
- strh r1, [r0, 0xC]
- strh r1, [r0, 0xE]
- ldr r1, =sub_80BEDF4
- str r1, [r0]
- movs r3, 0x87
- lsls r3, 3
- adds r0, r5, r3
- strb r2, [r0]
-_080BEDA0:
- add sp, 0x4
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BEA24
-
- thumb_func_start sub_80BEDB0
-sub_80BEDB0: @ 80BEDB0
- push {lr}
- bl FreeAllWindowBuffers
- movs r0, 0
- bl GetBgTilemapBuffer
- cmp r0, 0
- beq _080BEDC4
- bl Free
-_080BEDC4:
- movs r0, 0x1
- bl GetBgTilemapBuffer
- cmp r0, 0
- beq _080BEDD2
- bl Free
-_080BEDD2:
- movs r0, 0x2
- bl GetBgTilemapBuffer
- cmp r0, 0
- beq _080BEDE0
- bl Free
-_080BEDE0:
- movs r0, 0x3
- bl GetBgTilemapBuffer
- cmp r0, 0
- beq _080BEDEE
- bl Free
-_080BEDEE:
- pop {r0}
- bx r0
- thumb_func_end sub_80BEDB0
-
- thumb_func_start sub_80BEDF4
-sub_80BEDF4: @ 80BEDF4
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- movs r0, 0x8
- ldrsh r5, [r4, r0]
- cmp r5, 0
- beq _080BEE34
- movs r0, 0x1
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =sub_80BF038
- str r0, [r4]
- movs r0, 0x6C
- bl PlaySE
- b _080BEFBA
- .pool
-_080BEE34:
- ldr r1, =gMain
- ldrh r2, [r1, 0x2E]
- movs r0, 0x2
- ands r0, r2
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0
- beq _080BEE50
- movs r0, 0x1
- negs r0, r0
- str r5, [sp]
- b _080BEF0E
- .pool
-_080BEE50:
- movs r0, 0x1
- ands r0, r2
- cmp r0, 0
- beq _080BEF28
- ldr r5, =gUnknown_02039B4C
- ldr r0, [r5]
- ldr r1, =0x0000064d
- adds r0, r1
- ldrb r1, [r0]
- cmp r1, 0x1
- beq _080BEEA0
- cmp r1, 0x1
- bgt _080BEE78
- cmp r1, 0
- beq _080BEE82
- b _080BEFBA
- .pool
-_080BEE78:
- cmp r1, 0x2
- beq _080BEEC0
- cmp r1, 0x3
- beq _080BEF08
- b _080BEFBA
-_080BEE82:
- movs r0, 0x15
- negs r0, r0
- str r3, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, [r5]
- ldr r3, =0x0000064e
- adds r0, r3
- movs r1, 0x1
- b _080BEEF0
- .pool
-_080BEEA0:
- movs r0, 0x15
- negs r0, r0
- str r3, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, [r5]
- ldr r1, =0x0000064e
- adds r0, r1
- movs r1, 0x2
- b _080BEEF0
- .pool
-_080BEEC0:
- ldr r0, =gUnknown_02039B54
- ldr r0, [r0]
- ldrb r0, [r0, 0x2]
- ands r1, r0
- cmp r1, 0
- bne _080BEED8
- movs r0, 0x20
- bl PlaySE
- b _080BEFBA
- .pool
-_080BEED8:
- movs r0, 0x15
- negs r0, r0
- str r3, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, [r5]
- ldr r3, =0x0000064e
- adds r0, r3
- movs r1, 0x3
-_080BEEF0:
- strb r1, [r0]
- ldr r0, =sub_80BEFD0
- str r0, [r4]
- movs r0, 0x15
- bl PlaySE
- b _080BEFBA
- .pool
-_080BEF08:
- movs r0, 0x1
- negs r0, r0
- str r3, [sp]
-_080BEF0E:
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =sub_80BF070
- str r0, [r4]
- movs r0, 0x3
- bl PlaySE
- b _080BEFBA
- .pool
-_080BEF28:
- movs r0, 0x20
- ands r0, r2
- cmp r0, 0
- bne _080BEF44
- movs r0, 0x80
- lsls r0, 2
- ands r0, r2
- cmp r0, 0
- beq _080BEF78
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x13]
- cmp r0, 0x1
- bne _080BEF78
-_080BEF44:
- ldr r3, =gUnknown_02039B4C
- ldr r0, [r3]
- ldr r4, =0x0000064d
- adds r2, r0, r4
- ldrb r0, [r2]
- cmp r0, 0
- beq _080BEF78
- subs r0, 0x1
- strb r0, [r2]
- ldr r0, [r3]
- adds r0, r4
- ldrb r0, [r0]
- movs r1, 0xD
- bl sub_80BFD0C
- movs r0, 0x6D
- bl PlaySE
- b _080BEFBA
- .pool
-_080BEF78:
- ldrh r1, [r1, 0x2E]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _080BEF96
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _080BEFBA
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x13]
- cmp r0, 0x1
- bne _080BEFBA
-_080BEF96:
- ldr r2, =gUnknown_02039B4C
- ldr r0, [r2]
- ldr r3, =0x0000064d
- adds r1, r0, r3
- ldrb r0, [r1]
- cmp r0, 0x2
- bhi _080BEFBA
- adds r0, 0x1
- strb r0, [r1]
- ldr r0, [r2]
- adds r0, r3
- ldrb r0, [r0]
- movs r1, 0xD
- bl sub_80BFD0C
- movs r0, 0x6D
- bl PlaySE
-_080BEFBA:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BEDF4
-
- thumb_func_start sub_80BEFD0
-sub_80BEFD0: @ 80BEFD0
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080BF02C
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r4, r0, r1
- ldrh r0, [r4, 0x10]
- bl sub_818D820
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064e
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _080BF020
- cmp r0, 0x2
- ble _080BF008
- cmp r0, 0x3
- beq _080BF028
-_080BF008:
- ldr r0, =sub_80BF0AC
- b _080BF02A
- .pool
-_080BF020:
- ldr r0, =sub_80BF250
- b _080BF02A
- .pool
-_080BF028:
- ldr r0, =sub_80BF82C
-_080BF02A:
- str r0, [r4]
-_080BF02C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BEFD0
-
- thumb_func_start sub_80BF038
-sub_80BF038: @ 80BF038
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080BF05E
- ldr r0, =gTasks
- lsls r4, r2, 2
- adds r4, r2
- lsls r4, 3
- adds r4, r0
- ldrh r0, [r4, 0x10]
- bl sub_818D820
- ldr r0, =sub_80BEA24
- str r0, [r4]
-_080BF05E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BF038
-
- thumb_func_start sub_80BF070
-sub_80BF070: @ 80BF070
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080BF09C
- ldr r0, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldrh r0, [r1, 0x10]
- bl sub_818D820
- bl sub_80BEDB0
- adds r0, r4, 0
- bl DestroyTask
-_080BF09C:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BF070
-
- thumb_func_start sub_80BF0AC
-sub_80BF0AC: @ 80BF0AC
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r2, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r7, r2, r0
- ldrb r0, [r7]
- cmp r0, 0x1
- beq _080BF120
- cmp r0, 0x1
- ble _080BF0C8
- cmp r0, 0x2
- beq _080BF15C
-_080BF0C8:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0
- bne _080BF196
- ldr r4, =gUnknown_02039B4C
- ldr r0, [r4]
- ldr r1, =0x0000064a
- adds r0, r1
- movs r1, 0x5
- strb r1, [r0]
- ldr r1, =gUnknown_030060B4
- ldr r0, [r2, 0xC]
- str r0, [r1]
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0x80
- lsls r0, 2
- bl sub_80C09B0
- ldr r0, [r4]
- ldr r1, =0x0000064d
- adds r0, r1
- strb r5, [r0]
- movs r0, 0x1
- strb r0, [r7]
- b _080BF196
- .pool
-_080BF120:
- movs r0, 0xD
- bl sub_80BFCF4
- movs r0, 0
- movs r1, 0xD
- bl sub_80BFD7C
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064c
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 31
- lsrs r0, 31
- bl sub_80BC844
- movs r1, 0xD0
- lsls r1, 4
- movs r0, 0xA
- bl SetGpuReg
- ldrb r0, [r7]
- adds r0, 0x1
- strb r0, [r7]
- b _080BF196
- .pool
-_080BF15C:
- ldr r0, =gUnknown_02039B54
- ldr r0, [r0]
- ldrh r0, [r0]
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r0, 16
- ldr r5, =gUnknown_02039B4C
- ldr r1, [r5]
- ldr r4, =0x0000064e
- adds r1, r4
- bl sub_813D3D8
- ldr r0, =gUnknown_030060B4
- ldr r0, [r0]
- bl SetVBlankCallback
- ldr r0, [r5]
- adds r0, r4
- movs r1, 0
- strb r1, [r0]
- strb r1, [r7]
- ldr r1, =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80BF1B4
- str r1, [r0]
-_080BF196:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BF0AC
-
- thumb_func_start sub_80BF1B4
-sub_80BF1B4: @ 80BF1B4
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064e
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _080BF1D6
- ldr r0, =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80BF1EC
- str r0, [r1]
-_080BF1D6:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BF1B4
-
- thumb_func_start sub_80BF1EC
-sub_80BF1EC: @ 80BF1EC
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080BF242
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064e
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _080BF210
- cmp r0, 0x2
- beq _080BF234
-_080BF210:
- ldr r0, =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80BEA24
- b _080BF240
- .pool
-_080BF234:
- ldr r0, =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80BF250
-_080BF240:
- str r0, [r1]
-_080BF242:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BF1EC
-
- thumb_func_start sub_80BF250
-sub_80BF250: @ 80BF250
- push {r4,r5,lr}
- sub sp, 0x14
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r2, r1, 0
- cmp r0, 0xA
- bhi _080BF2A8
- lsls r0, 2
- ldr r1, =_080BF27C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080BF27C:
- .4byte _080BF2A8
- .4byte _080BF310
- .4byte _080BF360
- .4byte _080BF38C
- .4byte _080BF3A0
- .4byte _080BF3D0
- .4byte _080BF41C
- .4byte _080BF498
- .4byte _080BF514
- .4byte _080BF540
- .4byte _080BF590
-_080BF2A8:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080BF2B6
- b _080BF5B2
-_080BF2B6:
- ldr r0, =gMPlayInfo_BGM
- bl m4aMPlayStop
- ldr r5, =gUnknown_02039B4C
- ldr r0, [r5]
- ldr r3, =0x0000064a
- adds r0, r3
- movs r1, 0x6
- strb r1, [r0]
- ldr r1, =gUnknown_030060B4
- ldr r4, =gMain
- ldr r0, [r4, 0xC]
- str r0, [r1]
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0x80
- lsls r0, 2
- bl sub_80C09B0
- ldr r0, [r5]
- ldr r1, =0x0000064d
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- movs r2, 0x87
- lsls r2, 3
- adds r4, r2
- strb r1, [r4]
- b _080BF5B2
- .pool
-_080BF310:
- ldr r1, =gPokedexMenu_Gfx
- movs r2, 0x80
- lsls r2, 6
- movs r0, 0
- str r0, [sp]
- movs r0, 0x3
- movs r3, 0
- bl copy_decompressed_tile_data_to_vram_autofree
- ldr r1, =gUnknown_08DC3198
- movs r0, 0x3
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- movs r0, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0x3
- bl PutWindowTilemap
- movs r0, 0x2
- bl PutWindowTilemap
- ldr r1, =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _080BF582
- .pool
-_080BF360:
- movs r0, 0xD
- bl sub_80BFCF4
- movs r0, 0x1
- movs r1, 0xD
- bl sub_80BFD7C
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r4, =0x0000064c
- adds r0, r4
- ldrb r0, [r0]
- lsls r0, 31
- lsrs r0, 31
- bl sub_80BC844
- b _080BF57A
- .pool
-_080BF38C:
- bl ResetPaletteFade
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- b _080BF582
- .pool
-_080BF3A0:
- ldr r0, =gText_CryOf
- movs r1, 0x52
- movs r2, 0x21
- bl sub_80BE8DC
- ldr r0, =gUnknown_02039B54
- ldr r0, [r0]
- ldrh r1, [r0]
- movs r0, 0
- movs r2, 0x52
- movs r3, 0x31
- bl sub_80C0B44
- ldr r1, =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- b _080BF582
- .pool
-_080BF3D0:
- ldr r0, =gUnknown_02039B54
- ldr r0, [r0]
- ldrh r0, [r0]
- movs r1, 0x30
- movs r2, 0x38
- movs r3, 0
- bl sub_80C0E9C
- ldr r2, =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r2
- movs r3, 0
- strh r0, [r1, 0x10]
- ldr r2, =gSprites
- movs r4, 0x10
- ldrsh r0, [r1, r4]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x5]
- ldr r0, =gUnknown_030061EC
- strb r3, [r0]
- b _080BF57A
- .pool
-_080BF41C:
- ldr r1, =0xffff0000
- ldr r0, [sp, 0x4]
- ands r0, r1
- ldr r1, =0x00004020
- orrs r0, r1
- ldr r1, =0xff00ffff
- ands r0, r1
- movs r1, 0xF8
- lsls r1, 13
- orrs r0, r1
- ldr r1, =0x00ffffff
- ands r0, r1
- movs r1, 0x80
- lsls r1, 20
- orrs r0, r1
- str r0, [sp, 0x4]
- ldr r1, =0xffff00ff
- ldr r0, [sp, 0x8]
- ands r0, r1
- movs r1, 0xF0
- lsls r1, 5
- orrs r0, r1
- ldr r1, =0xffffff00
- ands r0, r1
- movs r1, 0xC
- orrs r0, r1
- str r0, [sp, 0x8]
- add r0, sp, 0x4
- movs r1, 0x2
- bl sub_8145354
- lsls r0, 24
- cmp r0, 0
- bne _080BF462
- b _080BF5B2
-_080BF462:
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
- ldrb r0, [r1]
- adds r0, 0x1
- movs r2, 0
- strb r0, [r1]
- ldr r0, =gUnknown_030061EC
- strb r2, [r0]
- b _080BF5B2
- .pool
-_080BF498:
- ldr r1, =0x00ffffff
- ldr r0, [sp, 0xC]
- ands r0, r1
- movs r1, 0x90
- lsls r1, 20
- orrs r0, r1
- str r0, [sp, 0xC]
- ldr r2, =0xffffff00
- add r0, sp, 0xC
- ldr r1, [r0, 0x4]
- ands r1, r2
- movs r2, 0x12
- orrs r1, r2
- ldr r2, =0xffff00ff
- ands r1, r2
- movs r2, 0xC0
- lsls r2, 2
- orrs r1, r2
- str r1, [r0, 0x4]
- movs r1, 0x3
- bl sub_8145850
- lsls r0, 24
- cmp r0, 0
- beq _080BF4D8
- ldr r1, =gMain
- movs r3, 0x87
- lsls r3, 3
- adds r1, r3
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
-_080BF4D8:
- movs r0, 0x3
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- movs r0, 0x2
- bl CopyBgTilemapBufferToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
- b _080BF5B2
- .pool
-_080BF514:
- movs r0, 0x15
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r0, =gUnknown_030060B4
- ldr r0, [r0]
- bl SetVBlankCallback
- ldr r1, =gMain
- movs r4, 0x87
- lsls r4, 3
- adds r1, r4
- b _080BF582
- .pool
-_080BF540:
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
-_080BF57A:
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
-_080BF582:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _080BF5B2
- .pool
-_080BF590:
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064e
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- movs r3, 0x87
- lsls r3, 3
- adds r0, r2, r3
- strb r1, [r0]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80BF5CC
- str r1, [r0]
-_080BF5B2:
- add sp, 0x14
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BF250
-
- thumb_func_start sub_80BF5CC
-sub_80BF5CC: @ 80BF5CC
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x2
- bl sub_814545C
- bl IsCryPlaying
- lsls r0, 24
- cmp r0, 0
- beq _080BF5EC
- movs r0, 0x1
- bl sub_80BF7FC
- b _080BF5F2
-_080BF5EC:
- movs r0, 0
- bl sub_80BF7FC
-_080BF5F2:
- ldr r1, =gMain
- ldrh r2, [r1, 0x2E]
- movs r0, 0x1
- ands r0, r2
- adds r5, r1, 0
- cmp r0, 0
- beq _080BF624
- movs r0, 0x1
- bl sub_80BF7FC
- ldr r0, =gUnknown_02039B54
- ldr r0, [r0]
- ldrh r0, [r0]
- bl NationalPokedexNumToSpecies
- lsls r0, 16
- lsrs r0, 16
- bl sub_8145534
- b _080BF772
- .pool
-_080BF624:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- beq _080BF636
- b _080BF772
-_080BF636:
- movs r0, 0x2
- ands r0, r2
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0
- beq _080BF694
- movs r0, 0x15
- negs r0, r0
- str r1, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =gMPlayInfo_BGM
- bl m4aMPlayContinue
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064e
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80BF790
- str r1, [r0]
- movs r0, 0x3
- bl PlaySE
- b _080BF772
- .pool
-_080BF694:
- movs r0, 0x20
- ands r0, r2
- cmp r0, 0
- bne _080BF6B0
- movs r0, 0x80
- lsls r0, 2
- ands r0, r2
- cmp r0, 0
- beq _080BF700
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x13]
- cmp r0, 0x1
- bne _080BF700
-_080BF6B0:
- movs r0, 0x15
- negs r0, r0
- str r3, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =gMPlayInfo_BGM
- bl m4aMPlayContinue
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064e
- adds r0, r1
- movs r1, 0x2
- strb r1, [r0]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80BF790
- str r1, [r0]
- movs r0, 0x6D
- bl PlaySE
- b _080BF772
- .pool
-_080BF700:
- ldrh r1, [r5, 0x2E]
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _080BF71E
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _080BF772
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x13]
- cmp r0, 0x1
- bne _080BF772
-_080BF71E:
- ldr r0, =gUnknown_02039B54
- ldr r0, [r0]
- ldrb r1, [r0, 0x2]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _080BF73C
- movs r0, 0x20
- bl PlaySE
- b _080BF772
- .pool
-_080BF73C:
- movs r0, 0x15
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =gMPlayInfo_BGM
- bl m4aMPlayContinue
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064e
- adds r0, r1
- movs r1, 0x3
- strb r1, [r0]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80BF790
- str r1, [r0]
- movs r0, 0x6D
- bl PlaySE
-_080BF772:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BF5CC
-
- thumb_func_start sub_80BF790
-sub_80BF790: @ 80BF790
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080BF7F0
- bl sub_8145914
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r4, r0, r1
- ldrh r0, [r4, 0x10]
- bl sub_818D820
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064e
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _080BF7E4
- cmp r0, 0x2
- ble _080BF7CC
- cmp r0, 0x3
- beq _080BF7EC
-_080BF7CC:
- ldr r0, =sub_80BEA24
- b _080BF7EE
- .pool
-_080BF7E4:
- ldr r0, =sub_80BF0AC
- b _080BF7EE
- .pool
-_080BF7EC:
- ldr r0, =sub_80BF82C
-_080BF7EE:
- str r0, [r4]
-_080BF7F0:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BF790
-
- thumb_func_start sub_80BF7FC
-sub_80BF7FC: @ 80BF7FC
- push {lr}
- sub sp, 0x4
- lsls r0, 24
- cmp r0, 0
- beq _080BF810
- ldr r1, =0x00000392
- b _080BF812
- .pool
-_080BF810:
- ldr r1, =0x000002af
-_080BF812:
- mov r0, sp
- strh r1, [r0]
- mov r0, sp
- movs r1, 0x5D
- movs r2, 0x2
- bl LoadPalette
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BF7FC
-
- thumb_func_start sub_80BF82C
-sub_80BF82C: @ 80BF82C
- push {r4-r7,lr}
- sub sp, 0x44
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- adds r5, r1, 0
- cmp r0, 0x9
- bhi _080BF880
- lsls r0, 2
- ldr r1, =_080BF858
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080BF858:
- .4byte _080BF880
- .4byte _080BF8D8
- .4byte _080BF910
- .4byte _080BF93C
- .4byte _080BF97C
- .4byte _080BF982
- .4byte _080BFA34
- .4byte _080BFAE8
- .4byte _080BFB14
- .4byte _080BFB64
-_080BF880:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080BF88E
- b _080BFB94
-_080BF88E:
- ldr r4, =gUnknown_02039B4C
- ldr r0, [r4]
- ldr r1, =0x0000064a
- adds r0, r1
- movs r1, 0x7
- strb r1, [r0]
- ldr r1, =gUnknown_030060B4
- ldr r0, [r5, 0xC]
- str r0, [r1]
- movs r0, 0
- bl SetVBlankCallback
- movs r0, 0x80
- lsls r0, 2
- bl sub_80C09B0
- ldr r0, [r4]
- ldr r2, =0x0000064d
- adds r0, r2
- movs r1, 0x2
- strb r1, [r0]
- movs r0, 0x87
- lsls r0, 3
- adds r1, r5, r0
- movs r0, 0x1
- strb r0, [r1]
- b _080BFB94
- .pool
-_080BF8D8:
- ldr r1, =gPokedexMenu_Gfx
- movs r2, 0x80
- lsls r2, 6
- movs r0, 0
- str r0, [sp]
- movs r0, 0x3
- movs r3, 0
- bl copy_decompressed_tile_data_to_vram_autofree
- ldr r1, =gUnknown_08DC2E6C
- movs r0, 0x3
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- movs r0, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- movs r0, 0
- bl PutWindowTilemap
- b _080BFB4E
- .pool
-_080BF910:
- movs r0, 0xD
- bl sub_80BFCF4
- movs r0, 0x2
- movs r1, 0xD
- bl sub_80BFD7C
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064c
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 31
- lsrs r0, 31
- bl sub_80BC844
- b _080BFB4E
- .pool
-_080BF93C:
- ldr r1, =gText_SizeComparedTo
- add r0, sp, 0x4
- bl StringCopy
- ldr r0, =gSaveBlock2Ptr
- ldr r1, [r0]
- add r0, sp, 0x4
- bl StringAppend
- movs r0, 0x1
- add r1, sp, 0x4
- movs r2, 0xF0
- bl GetStringCenterAlignXOffset
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- add r0, sp, 0x4
- movs r2, 0x79
- bl sub_80BE8DC
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _080BFB56
- .pool
-_080BF97C:
- bl ResetPaletteFade
- b _080BFB4E
-_080BF982:
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- bl PlayerGenderToFrontTrainerPicId
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x98
- movs r2, 0x38
- movs r3, 0
- bl sub_80C0EF8
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, =gSprites
- lsls r4, r6, 4
- adds r4, r6
- lsls r4, 2
- adds r4, r0
- ldrb r1, [r4, 0x1]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r4, 0x1]
- ldrb r1, [r4, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r1
- movs r1, 0x2
- orrs r0, r1
- strb r0, [r4, 0x3]
- ldrb r1, [r4, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- strb r0, [r4, 0x5]
- ldr r2, =gPokedexEntries
- ldr r0, =gUnknown_02039B54
- ldr r1, [r0]
- ldrh r0, [r1]
- lsls r0, 5
- adds r0, r2
- ldrh r0, [r0, 0x1C]
- strh r0, [r4, 0x26]
- ldrh r0, [r1]
- lsls r0, 5
- adds r0, r2
- ldrh r1, [r0, 0x1A]
- str r1, [sp]
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl SetOamMatrix
- ldr r0, =gUnknown_0856E610
- ldrb r1, [r4, 0x5]
- lsrs r1, 4
- adds r1, 0x10
- lsls r1, 4
- movs r2, 0x20
- bl LoadPalette
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- strh r6, [r0, 0x12]
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _080BFB56
- .pool
-_080BFA34:
- ldr r5, =gUnknown_02039B54
- ldr r0, [r5]
- ldrh r0, [r0]
- movs r1, 0x58
- movs r2, 0x38
- movs r3, 0x1
- bl sub_80C0E9C
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, =gSprites
- lsls r4, r6, 4
- adds r4, r6
- lsls r4, 2
- adds r4, r0
- ldrb r1, [r4, 0x1]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r4, 0x1]
- ldrb r1, [r4, 0x3]
- movs r0, 0x3F
- negs r0, r0
- ands r0, r1
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r4, 0x3]
- ldrb r1, [r4, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r1
- strb r0, [r4, 0x5]
- ldr r2, =gPokedexEntries
- ldr r1, [r5]
- ldrh r0, [r1]
- lsls r0, 5
- adds r0, r2
- ldrh r0, [r0, 0x18]
- strh r0, [r4, 0x26]
- ldrh r0, [r1]
- lsls r0, 5
- adds r0, r2
- ldrh r1, [r0, 0x16]
- str r1, [sp]
- movs r0, 0x2
- movs r2, 0
- movs r3, 0
- bl SetOamMatrix
- ldr r0, =gUnknown_0856E610
- ldrb r1, [r4, 0x5]
- lsrs r1, 4
- adds r1, 0x10
- lsls r1, 4
- movs r2, 0x20
- bl LoadPalette
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- strh r6, [r0, 0x10]
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- movs r0, 0x2
- bl CopyBgTilemapBufferToVram
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
- b _080BFB4E
- .pool
-_080BFAE8:
- movs r0, 0x15
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r0, =gUnknown_030060B4
- ldr r0, [r0]
- bl SetVBlankCallback
- ldr r1, =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- b _080BFB56
- .pool
-_080BFB14:
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x52
- movs r1, 0
- bl SetGpuReg
- movs r0, 0x54
- movs r1, 0
- bl SetGpuReg
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0
- bl HideBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x3
- bl ShowBg
-_080BFB4E:
- ldr r1, =gMain
- movs r2, 0x87
- lsls r2, 3
- adds r1, r2
-_080BFB56:
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _080BFB94
- .pool
-_080BFB64:
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- bne _080BFB94
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064e
- adds r0, r1
- strb r2, [r0]
- movs r1, 0x87
- lsls r1, 3
- adds r0, r5, r1
- strb r2, [r0]
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80BFBB0
- str r1, [r0]
-_080BFB94:
- add sp, 0x44
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BF82C
-
- thumb_func_start sub_80BFBB0
-sub_80BFBB0: @ 80BFBB0
- push {r4,r5,lr}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0
- beq _080BFC10
- movs r0, 0x15
- negs r0, r0
- movs r1, 0
- str r1, [sp]
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064e
- adds r0, r1
- movs r1, 0x1
- strb r1, [r0]
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80BFC78
- str r1, [r0]
- movs r0, 0x3
- bl PlaySE
- b _080BFC5C
- .pool
-_080BFC10:
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- bne _080BFC2C
- movs r0, 0x80
- lsls r0, 2
- ands r0, r1
- cmp r0, 0
- beq _080BFC5C
- ldr r0, =gSaveBlock2Ptr
- ldr r0, [r0]
- ldrb r0, [r0, 0x13]
- cmp r0, 0x1
- bne _080BFC5C
-_080BFC2C:
- movs r0, 0x15
- negs r0, r0
- str r2, [sp]
- movs r1, 0
- movs r2, 0
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064e
- adds r0, r1
- movs r1, 0x2
- strb r1, [r0]
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80BFC78
- str r1, [r0]
- movs r0, 0x6D
- bl PlaySE
-_080BFC5C:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BFBB0
-
- thumb_func_start sub_80BFC78
-sub_80BFC78: @ 80BFC78
- push {r4,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080BFCD0
- ldr r1, =gTasks
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- adds r4, r0, r1
- ldrh r0, [r4, 0x10]
- bl sub_818D820
- ldrh r0, [r4, 0x12]
- bl sub_818D8F0
- ldr r0, =gUnknown_02039B4C
- ldr r0, [r0]
- ldr r1, =0x0000064e
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _080BFCB2
- cmp r0, 0x2
- beq _080BFCCC
-_080BFCB2:
- ldr r0, =sub_80BEA24
- b _080BFCCE
- .pool
-_080BFCCC:
- ldr r0, =sub_80BF250
-_080BFCCE:
- str r0, [r4]
-_080BFCD0:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BFC78
-
- thumb_func_start sub_80BFCDC
-sub_80BFCDC: @ 80BFCDC
- push {lr}
- ldr r1, =gUnknown_08DC2F5C
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BFCDC
-
- thumb_func_start sub_80BFCF4
-sub_80BFCF4: @ 80BFCF4
- push {lr}
- ldr r1, =gUnknown_08DC2FEC
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80BFCF4
-
thumb_func_start sub_80BFD0C
sub_80BFD0C: @ 80BFD0C
push {r4-r7,lr}