summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/contest_link_80F57C4.s2512
-rw-r--r--asm/easy_chat.s5972
-rw-r--r--asm/flying.s817
3 files changed, 0 insertions, 9301 deletions
diff --git a/asm/contest_link_80F57C4.s b/asm/contest_link_80F57C4.s
deleted file mode 100644
index d73293648..000000000
--- a/asm/contest_link_80F57C4.s
+++ /dev/null
@@ -1,2512 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_80F7364
-sub_80F7364: @ 80F7364
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- lsrs r6, r1, 24
- ldr r1, =gUnknown_02039F18
- lsls r0, r5, 1
- adds r0, r1
- movs r2, 0
- ldrsh r0, [r0, r2]
- adds r7, r1, 0
- cmp r0, 0
- bge _080F7380
- negs r0, r0
-_080F7380:
- lsls r4, r0, 16
- adds r0, r4, 0
- movs r1, 0x50
- bl __udivsi3
- adds r2, r0, 0
- ldr r0, =0x0000ffff
- ands r0, r2
- cmp r0, 0
- beq _080F739A
- movs r0, 0x80
- lsls r0, 9
- adds r2, r0
-_080F739A:
- lsrs r2, 16
- cmp r2, 0
- bne _080F73A6
- cmp r4, 0
- beq _080F73A6
- movs r2, 0x1
-_080F73A6:
- cmp r6, 0
- beq _080F73B0
- cmp r2, 0xA
- bls _080F73B0
- movs r2, 0xA
-_080F73B0:
- lsls r0, r5, 1
- adds r0, r7
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0
- bge _080F73CC
- negs r0, r2
- lsls r0, 24
- b _080F73CE
- .pool
-_080F73CC:
- lsls r0, r2, 24
-_080F73CE:
- lsrs r0, 24
- lsls r0, 24
- asrs r0, 24
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_80F7364
-
- thumb_func_start sub_80F73DC
-sub_80F73DC: @ 80F73DC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x10
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r1, =gTasks
- lsls r0, 2
- add r0, r8
- lsls r0, 3
- adds r7, r0, r1
- ldrh r2, [r7, 0x1C]
- movs r0, 0x1C
- ldrsh r6, [r7, r0]
- cmp r6, 0
- bne _080F741C
- movs r1, 0x8
- ldrsh r0, [r7, r1]
- movs r1, 0x3
- subs r1, r0
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- strh r0, [r7, 0x1E]
- adds r0, r2, 0x1
- strh r0, [r7, 0x1C]
- b _080F74A4
- .pool
-_080F741C:
- cmp r6, 0x1
- bne _080F74A4
- ldrh r0, [r7, 0x1E]
- subs r0, 0x1
- strh r0, [r7, 0x1E]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- bne _080F74A4
- movs r2, 0x8
- ldrsh r4, [r7, r2]
- lsls r4, 17
- ldr r0, =0x50430000
- adds r4, r0
- lsrs r4, 16
- movs r1, 0xA
- ldrsh r0, [r7, r1]
- lsls r3, r0, 1
- adds r3, r0
- adds r3, 0x5
- lsls r3, 24
- lsrs r3, 24
- movs r2, 0x2
- mov r9, r2
- str r2, [sp]
- str r6, [sp, 0x4]
- movs r5, 0x11
- str r5, [sp, 0x8]
- str r6, [sp, 0xC]
- movs r0, 0x2
- adds r1, r4, 0
- movs r2, 0x1
- bl WriteSequenceToBgTilemapBuffer
- adds r4, 0x10
- lsls r4, 16
- lsrs r4, 16
- movs r1, 0xA
- ldrsh r0, [r7, r1]
- lsls r3, r0, 1
- adds r3, r0
- adds r3, 0x6
- lsls r3, 24
- lsrs r3, 24
- mov r2, r9
- str r2, [sp]
- str r6, [sp, 0x4]
- str r5, [sp, 0x8]
- str r6, [sp, 0xC]
- movs r0, 0x2
- adds r1, r4, 0
- movs r2, 0x1
- bl WriteSequenceToBgTilemapBuffer
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r1, [r0]
- ldrb r0, [r1, 0x5]
- adds r0, 0x1
- strb r0, [r1, 0x5]
- mov r0, r8
- bl DestroyTask
- movs r0, 0x18
- bl PlaySE
-_080F74A4:
- add sp, 0x10
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F73DC
-
- thumb_func_start sub_80F74BC
-sub_80F74BC: @ 80F74BC
- push {r4-r6,lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r5, r0, 24
- movs r4, 0
- ldr r1, =gContestFinalStandings
- ldrb r0, [r1]
- ldr r6, =gUnknown_0203A034
- cmp r0, 0
- beq _080F74DE
-_080F74D0:
- adds r4, 0x1
- cmp r4, 0x3
- bgt _080F74DE
- adds r0, r4, r1
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F74D0
-_080F74DE:
- ldr r1, [r6]
- lsls r3, r4, 1
- adds r3, r4
- lsls r0, r3, 6
- movs r2, 0x80
- lsls r2, 1
- adds r0, r2
- ldr r1, [r1, 0x14]
- adds r1, r0
- adds r3, 0x4
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0x20
- str r0, [sp]
- movs r0, 0x3
- str r0, [sp, 0x4]
- movs r0, 0x9
- str r0, [sp, 0x8]
- movs r0, 0x2
- movs r2, 0
- bl CopyToBgTilemapBufferRect_ChangePalette
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- strh r4, [r0, 0x1C]
- movs r1, 0x1
- strh r1, [r0, 0x20]
- ldr r1, =sub_80F753C
- str r1, [r0]
- ldr r0, [r6]
- ldr r0, [r0]
- strb r5, [r0, 0x3]
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F74BC
-
- thumb_func_start sub_80F753C
-sub_80F753C: @ 80F753C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r4, r1, r2
- ldrh r0, [r4, 0x1E]
- adds r0, 0x1
- strh r0, [r4, 0x1E]
- lsls r0, 16
- asrs r5, r0, 16
- cmp r5, 0x1
- bne _080F75A0
- movs r0, 0
- strh r0, [r4, 0x1E]
- ldrh r2, [r4, 0x20]
- lsls r2, 24
- lsrs r2, 24
- ldr r3, =0x00006f8d
- movs r0, 0x91
- movs r1, 0x1
- bl BlendPalette
- movs r1, 0x22
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _080F7590
- ldrh r0, [r4, 0x20]
- adds r0, 0x1
- strh r0, [r4, 0x20]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x10
- bne _080F75A0
- strh r5, [r4, 0x22]
- b _080F75A0
- .pool
-_080F7590:
- ldrh r0, [r4, 0x20]
- subs r0, 0x1
- strh r0, [r4, 0x20]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0
- bne _080F75A0
- strh r0, [r4, 0x22]
-_080F75A0:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_80F753C
-
- thumb_func_start sub_80F75A8
-sub_80F75A8: @ 80F75A8
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x2E]
- movs r2, 0x2E
- ldrsh r0, [r4, r2]
- cmp r0, 0x9
- bgt _080F75D0
- adds r0, r1, 0x1
- strh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0xA
- bne _080F7610
- ldrh r0, [r4, 0x30]
- movs r1, 0
- bl PlayCry1
- movs r0, 0
- strh r0, [r4, 0x30]
- b _080F7610
-_080F75D0:
- movs r0, 0xC0
- lsls r0, 3
- adds r2, r0, 0
- ldrh r1, [r4, 0x30]
- adds r2, r1
- lsls r1, r2, 16
- asrs r1, 24
- ldrh r0, [r4, 0x20]
- subs r0, r1
- strh r0, [r4, 0x20]
- movs r1, 0xFF
- ands r2, r1
- strh r2, [r4, 0x30]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x77
- bgt _080F75F6
- movs r0, 0x78
- strh r0, [r4, 0x20]
-_080F75F6:
- movs r2, 0x20
- ldrsh r0, [r4, r2]
- cmp r0, 0x78
- bne _080F7610
- ldr r0, =SpriteCallbackDummy
- str r0, [r4, 0x1C]
- movs r0, 0
- strh r0, [r4, 0x30]
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r1, [r0]
- movs r0, 0x1
- strb r0, [r1, 0x6]
-_080F7610:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F75A8
-
- thumb_func_start sub_80F7620
-sub_80F7620: @ 80F7620
- push {lr}
- adds r3, r0, 0
- movs r0, 0xC0
- lsls r0, 3
- adds r2, r0, 0
- ldrh r0, [r3, 0x30]
- adds r2, r0
- lsls r1, r2, 16
- asrs r1, 24
- ldrh r0, [r3, 0x20]
- subs r0, r1
- strh r0, [r3, 0x20]
- movs r1, 0xFF
- ands r2, r1
- strh r2, [r3, 0x30]
- lsls r0, 16
- asrs r0, 16
- movs r1, 0x20
- negs r1, r1
- cmp r0, r1
- bge _080F7664
- ldr r0, =SpriteCallbackDummy
- str r0, [r3, 0x1C]
- adds r2, r3, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r1, [r0]
- movs r0, 0x2
- strb r0, [r1, 0x6]
-_080F7664:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F7620
-
- thumb_func_start sub_80F7670
-sub_80F7670: @ 80F7670
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r1, =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r1, r0, r1
- ldrh r0, [r1, 0x8]
- adds r0, 0x1
- strh r0, [r1, 0x8]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x5
- bne _080F7732
- movs r0, 0
- strh r0, [r1, 0x8]
- ldr r0, =gUnknown_0203A034
- mov r8, r0
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x7]
- cmp r0, 0x27
- bhi _080F7732
- ldr r4, =gSpriteTemplate_858D860
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xF0
- bl __umodsi3
- adds r1, r0, 0
- subs r1, 0x14
- lsls r1, 16
- asrs r1, 16
- adds r0, r4, 0
- movs r2, 0x2C
- movs r3, 0x5
- bl CreateSprite
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl Random
- ldr r1, =gSprites
- lsls r5, r4, 4
- adds r5, r4
- lsls r5, 2
- adds r5, r1
- lsls r0, 23
- lsrs r0, 23
- strh r0, [r5, 0x2E]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x18
- bl __umodsi3
- adds r0, 0x10
- strh r0, [r5, 0x30]
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xFF
- ands r0, r1
- adds r0, 0x30
- strh r0, [r5, 0x32]
- bl Random
- ldrh r6, [r5, 0x4]
- lsls r4, r6, 22
- lsrs r4, 22
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x11
- bl __umodsi3
- adds r4, r0
- ldr r1, =0x000003ff
- adds r0, r1, 0
- ands r4, r0
- ldr r0, =0xfffffc00
- ands r0, r6
- orrs r0, r4
- strh r0, [r5, 0x4]
- mov r1, r8
- ldr r0, [r1]
- ldr r1, [r0]
- ldrb r0, [r1, 0x7]
- adds r0, 0x1
- strb r0, [r1, 0x7]
-_080F7732:
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- ldrb r0, [r0, 0x9]
- cmp r0, 0
- beq _080F7744
- adds r0, r7, 0
- bl DestroyTask
-_080F7744:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F7670
-
- thumb_func_start sub_80F7768
-sub_80F7768: @ 80F7768
- push {r4,r5,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x2E]
- ldrh r1, [r4, 0x34]
- adds r0, r1
- strh r0, [r4, 0x34]
- lsls r0, 16
- asrs r0, 24
- movs r2, 0x30
- ldrsh r1, [r4, r2]
- bl Sin
- strh r0, [r4, 0x24]
- ldrh r1, [r4, 0x32]
- ldrh r0, [r4, 0x36]
- adds r1, r0
- lsls r0, r1, 16
- asrs r0, 24
- ldrh r2, [r4, 0x20]
- adds r0, r2
- strh r0, [r4, 0x20]
- movs r0, 0xFF
- ands r1, r0
- strh r1, [r4, 0x36]
- ldrh r0, [r4, 0x22]
- adds r0, 0x1
- strh r0, [r4, 0x22]
- ldr r5, =gUnknown_0203A034
- ldr r0, [r5]
- ldr r0, [r0]
- ldrb r0, [r0, 0x9]
- cmp r0, 0
- beq _080F77B6
- adds r2, r4, 0
- adds r2, 0x3E
- ldrb r0, [r2]
- movs r1, 0x4
- orrs r0, r1
- strb r0, [r2]
-_080F77B6:
- movs r1, 0x20
- ldrsh r0, [r4, r1]
- cmp r0, 0xF8
- bgt _080F77C6
- movs r2, 0x22
- ldrsh r0, [r4, r2]
- cmp r0, 0x74
- ble _080F77D6
-_080F77C6:
- adds r0, r4, 0
- bl DestroySprite
- ldr r0, [r5]
- ldr r1, [r0]
- ldrb r0, [r1, 0x7]
- subs r0, 0x1
- strb r0, [r1, 0x7]
-_080F77D6:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F7768
-
- thumb_func_start sub_80F77E0
-sub_80F77E0: @ 80F77E0
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- ldr r0, =sub_80F7824
- movs r1, 0x8
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- strh r5, [r1, 0xA]
- ldr r0, =gContestMons
- lsls r4, 6
- adds r4, r0
- ldrh r0, [r4]
- strh r0, [r1, 0xC]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F77E0
-
- thumb_func_start sub_80F7824
-sub_80F7824: @ 80F7824
- 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
- ldrb r5, [r4, 0x8]
- ldrh r0, [r4, 0x1C]
- adds r1, r0, 0x1
- strh r1, [r4, 0x1C]
- lsls r0, 16
- asrs r0, 16
- movs r2, 0xA
- ldrsh r1, [r4, r2]
- cmp r0, r1
- bne _080F786E
- movs r0, 0
- strh r0, [r4, 0x1C]
- ldrh r0, [r4, 0xC]
- ldrb r2, [r4, 0x1E]
- ldr r1, =gContestMons
- lsls r3, r5, 6
- adds r1, 0x38
- adds r3, r1
- ldr r1, [r3]
- str r1, [sp]
- adds r1, r5, 0
- movs r3, 0
- bl sub_80F69B8
- ldrh r0, [r4, 0x1E]
- movs r1, 0x1
- eors r0, r1
- strh r0, [r4, 0x1E]
-_080F786E:
- add sp, 0x4
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F7824
-
- thumb_func_start sub_80F7880
-sub_80F7880: @ 80F7880
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r0, =gUnknown_02039F08
- ldrh r2, [r0]
- adds r4, r0, 0
- adds r3, r4, 0x2
- movs r0, 0x2
- mov r8, r0
-_080F7898:
- lsls r0, r2, 16
- asrs r0, 16
- movs r5, 0
- ldrsh r1, [r3, r5]
- cmp r0, r1
- bge _080F78A6
- ldrh r2, [r3]
-_080F78A6:
- adds r3, 0x2
- movs r0, 0x1
- negs r0, r0
- add r8, r0
- mov r1, r8
- cmp r1, 0
- bge _080F7898
- lsls r0, r2, 16
- str r0, [sp]
- cmp r0, 0
- bge _080F78E4
- ldrh r2, [r4]
- adds r3, r4, 0x2
- movs r4, 0x2
- mov r8, r4
-_080F78C4:
- lsls r0, r2, 16
- asrs r0, 16
- movs r5, 0
- ldrsh r1, [r3, r5]
- cmp r0, r1
- ble _080F78D2
- ldrh r2, [r3]
-_080F78D2:
- adds r3, 0x2
- movs r0, 0x1
- negs r0, r0
- add r8, r0
- lsls r1, r2, 16
- str r1, [sp]
- mov r4, r8
- cmp r4, 0
- bge _080F78C4
-_080F78E4:
- movs r5, 0
- mov r8, r5
- mov r10, r5
-_080F78EA:
- ldr r0, =gContestMonConditions
- mov r1, r8
- lsls r7, r1, 1
- adds r0, r7, r0
- movs r2, 0
- ldrsh r1, [r0, r2]
- lsls r0, r1, 5
- subs r0, r1
- lsls r0, 2
- adds r0, r1
- lsls r0, 3
- ldr r4, [sp]
- asrs r5, r4, 16
- adds r1, r5, 0
- cmp r5, 0
- bge _080F790C
- negs r1, r5
-_080F790C:
- bl __divsi3
- adds r4, r0, 0
- movs r1, 0xA
- bl __modsi3
- cmp r0, 0x4
- ble _080F791E
- adds r4, 0xA
-_080F791E:
- ldr r0, =gUnknown_0203A034
- mov r9, r0
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- mov r1, r10
- adds r6, r1, r0
- adds r0, r4, 0
- movs r1, 0xA
- bl __divsi3
- str r0, [r6]
- ldr r0, =gUnknown_02039F18
- adds r7, r0
- movs r2, 0
- ldrsh r1, [r7, r2]
- cmp r1, 0
- bge _080F7942
- negs r1, r1
-_080F7942:
- lsls r0, r1, 5
- subs r0, r1
- lsls r0, 2
- adds r0, r1
- lsls r0, 3
- adds r1, r5, 0
- cmp r1, 0
- bge _080F7954
- negs r1, r1
-_080F7954:
- bl __divsi3
- adds r4, r0, 0
- movs r1, 0xA
- bl __modsi3
- cmp r0, 0x4
- ble _080F7966
- adds r4, 0xA
-_080F7966:
- adds r0, r4, 0
- movs r1, 0xA
- bl __divsi3
- str r0, [r6, 0x4]
- movs r4, 0
- ldrsh r0, [r7, r4]
- cmp r0, 0
- bge _080F797C
- movs r0, 0x1
- strb r0, [r6, 0x10]
-_080F797C:
- mov r5, r9
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- mov r1, r10
- adds r4, r1, r0
- ldr r1, [r4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- subs r0, r1
- lsls r0, 11
- movs r1, 0x64
- bl __divsi3
- adds r1, r0, 0
- movs r5, 0xFF
- ands r0, r5
- cmp r0, 0x7F
- bls _080F79A8
- movs r2, 0x80
- lsls r2, 1
- adds r1, r2
-_080F79A8:
- lsrs r0, r1, 8
- str r0, [r4, 0x8]
- ldr r1, [r4, 0x4]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- subs r0, r1
- lsls r0, 11
- movs r1, 0x64
- bl __divsi3
- adds r1, r0, 0
- ands r0, r5
- cmp r0, 0x7F
- bls _080F79CC
- movs r5, 0x80
- lsls r5, 1
- adds r1, r5
-_080F79CC:
- lsrs r0, r1, 8
- str r0, [r4, 0xC]
- mov r0, r8
- lsls r4, r0, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_80F7310
- mov r2, r9
- ldr r1, [r2]
- ldr r1, [r1, 0x4]
- add r1, r10
- strb r0, [r1, 0x11]
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_80F7364
- mov r4, r9
- ldr r1, [r4]
- ldr r1, [r1, 0x4]
- add r1, r10
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- bge _080F7A02
- negs r0, r0
-_080F7A02:
- strb r0, [r1, 0x12]
- ldr r0, =gContestFinalStandings
- add r0, r8
- ldrb r0, [r0]
- cmp r0, 0
- beq _080F7A60
- mov r5, r9
- ldr r0, [r5]
- ldr r0, [r0, 0x4]
- mov r2, r10
- adds r1, r2, r0
- ldr r5, [r1, 0x8]
- ldrh r3, [r1, 0x8]
- ldr r4, [r1, 0xC]
- ldrh r2, [r1, 0xC]
- ldrb r0, [r1, 0x10]
- cmp r0, 0
- beq _080F7A2C
- lsls r0, r2, 16
- negs r0, r0
- lsrs r2, r0, 16
-_080F7A2C:
- lsls r0, r3, 16
- asrs r3, r0, 16
- lsls r0, r2, 16
- asrs r2, r0, 16
- adds r0, r3, r2
- cmp r0, 0x58
- bne _080F7A60
- cmp r2, 0
- ble _080F7A58
- subs r0, r4, 0x1
- str r0, [r1, 0xC]
- b _080F7A60
- .pool
-_080F7A58:
- cmp r3, 0
- ble _080F7A60
- subs r0, r5, 0x1
- str r0, [r1, 0x8]
-_080F7A60:
- movs r4, 0x14
- add r10, r4
- movs r5, 0x1
- add r8, r5
- mov r0, r8
- cmp r0, 0x3
- bgt _080F7A70
- b _080F78EA
-_080F7A70:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80F7880
-
- thumb_func_start sub_80F7A80
-sub_80F7A80: @ 80F7A80
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- lsls r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- movs r1, 0
- str r1, [sp, 0x8]
- movs r3, 0
- str r3, [sp, 0xC]
- cmp r0, 0
- bne _080F7B5C
- mov r9, r3
- ldr r4, =gUnknown_0203A034
- mov r10, r4
- movs r7, 0xA0
- lsls r7, 19
- movs r6, 0
-_080F7AAC:
- mov r1, r10
- ldr r0, [r1]
- ldr r0, [r0, 0x4]
- adds r0, r6, r0
- ldrb r2, [r0, 0x11]
- cmp r8, r2
- bcs _080F7B2E
- adds r2, 0x13
- mov r3, r8
- subs r2, r3
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- lsrs r3, r7, 24
- movs r0, 0x1
- str r0, [sp]
- str r0, [sp, 0x4]
- ldr r1, =0x000060b3
- bl FillBgTilemapBufferRect_Palette0
- ldr r0, =sub_80F7CA8
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r5, r0, 24
- mov r0, r10
- ldr r4, [r0]
- ldr r1, [r4, 0x4]
- adds r1, r6, r1
- ldr r0, [r1, 0x8]
- lsls r0, 16
- ldrb r1, [r1, 0x11]
- bl __udivsi3
- mov r1, r8
- adds r1, 0x1
- adds r3, r0, 0
- muls r3, r1
- ldr r0, =0x0000ffff
- ands r0, r3
- ldr r1, =0x00007fff
- cmp r0, r1
- bls _080F7B0A
- movs r1, 0x80
- lsls r1, 9
- adds r3, r1
-_080F7B0A:
- ldr r1, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- mov r1, r9
- strh r1, [r0, 0x8]
- lsrs r1, r3, 16
- strh r1, [r0, 0xA]
- ldr r1, [r4]
- ldrb r0, [r1, 0x14]
- adds r0, 0x1
- strb r0, [r1, 0x14]
- ldr r0, [sp, 0x8]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x8]
-_080F7B2E:
- movs r3, 0xC0
- lsls r3, 18
- adds r7, r3
- adds r6, 0x14
- movs r4, 0x1
- add r9, r4
- mov r0, r9
- cmp r0, 0x3
- ble _080F7AAC
- b _080F7C7E
- .pool
-_080F7B5C:
- movs r1, 0
- mov r9, r1
- mov r10, r1
- movs r3, 0xC0
- lsls r3, 19
- str r3, [sp, 0x10]
-_080F7B68:
- ldr r4, =gUnknown_0203A034
- ldr r0, [r4]
- ldr r0, [r0, 0x4]
- add r0, r10
- ldrb r2, [r0, 0x12]
- ldrb r0, [r0, 0x10]
- ldr r1, =0x000060a3
- cmp r0, 0
- beq _080F7B7C
- adds r1, 0x2
-_080F7B7C:
- lsls r0, r2, 24
- asrs r0, 24
- cmp r8, r0
- bge _080F7C64
- mov r3, r8
- lsls r2, r3, 24
- asrs r2, 24
- subs r2, 0x13
- subs r2, r0, r2
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- ldr r4, [sp, 0x10]
- lsrs r3, r4, 24
- movs r7, 0x1
- str r7, [sp]
- str r7, [sp, 0x4]
- movs r0, 0x1
- bl FillBgTilemapBufferRect_Palette0
- ldr r0, =sub_80F7CA8
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, =gUnknown_0203A034
- ldr r6, [r0]
- ldr r1, [r6, 0x4]
- add r1, r10
- ldr r0, [r1, 0xC]
- lsls r0, 16
- ldrb r1, [r1, 0x12]
- bl __udivsi3
- mov r1, r8
- adds r1, 0x1
- adds r3, r0, 0
- muls r3, r1
- ldr r0, =0x0000ffff
- ands r0, r3
- ldr r1, =0x00007fff
- cmp r0, r1
- bls _080F7BDA
- movs r1, 0x80
- lsls r1, 9
- adds r3, r1
-_080F7BDA:
- ldr r1, =gTasks
- lsls r2, r5, 2
- adds r0, r2, r5
- lsls r0, 3
- adds r4, r0, r1
- mov r0, r9
- strh r0, [r4, 0x8]
- ldr r0, [r6, 0x4]
- add r0, r10
- ldrb r0, [r0, 0x10]
- adds r6, r1, 0
- cmp r0, 0
- beq _080F7C1C
- strh r7, [r4, 0xC]
- ldr r0, [sp, 0xC]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0xC]
- b _080F7C26
- .pool
-_080F7C1C:
- ldr r0, [sp, 0x8]
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x8]
-_080F7C26:
- ldr r1, =gUnknown_0203A034
- ldr r0, [r1]
- ldr r0, [r0, 0x4]
- mov r4, r10
- adds r1, r4, r0
- ldrb r0, [r1, 0x10]
- ldr r4, =gUnknown_0203A034
- cmp r0, 0
- beq _080F7C4C
- adds r0, r2, r5
- lsls r0, 3
- adds r0, r6
- lsrs r2, r3, 16
- ldr r1, [r1, 0x8]
- subs r1, r2
- b _080F7C58
- .pool
-_080F7C4C:
- adds r0, r2, r5
- lsls r0, 3
- adds r0, r6
- lsrs r2, r3, 16
- ldr r1, [r1, 0x8]
- adds r1, r2
-_080F7C58:
- strh r1, [r0, 0xA]
- ldr r0, [r4]
- ldr r1, [r0]
- ldrb r0, [r1, 0x14]
- adds r0, 0x1
- strb r0, [r1, 0x14]
-_080F7C64:
- movs r0, 0x14
- add r10, r0
- ldr r1, [sp, 0x10]
- movs r3, 0xC0
- lsls r3, 18
- adds r1, r3
- str r1, [sp, 0x10]
- movs r4, 0x1
- add r9, r4
- mov r0, r9
- cmp r0, 0x3
- bgt _080F7C7E
- b _080F7B68
-_080F7C7E:
- ldr r1, [sp, 0xC]
- cmp r1, 0
- beq _080F7C8A
- movs r0, 0x16
- bl PlaySE
-_080F7C8A:
- ldr r3, [sp, 0x8]
- cmp r3, 0
- beq _080F7C96
- movs r0, 0x15
- bl PlaySE
-_080F7C96:
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_80F7A80
-
- thumb_func_start sub_80F7CA8
-sub_80F7CA8: @ 80F7CA8
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r4, 0
- mov r9, r4
- ldr r1, =gTasks
- lsls r0, 2
- add r0, r8
- lsls r0, 3
- adds r0, r1
- ldrb r6, [r0, 0x8]
- ldrh r7, [r0, 0xA]
- ldrh r1, [r0, 0xC]
- mov r12, r1
- movs r2, 0xC
- ldrsh r0, [r0, r2]
- cmp r0, 0
- beq _080F7CF8
- ldr r2, =gUnknown_0203A034
- ldr r0, [r2]
- ldr r0, [r0]
- lsls r1, r6, 1
- adds r0, 0xC
- adds r0, r1
- movs r3, 0
- ldrsh r0, [r0, r3]
- adds r5, r1, 0
- cmp r0, 0
- bgt _080F7D10
- b _080F7D0E
- .pool
-_080F7CF8:
- ldr r2, =gUnknown_0203A034
- ldr r0, [r2]
- ldr r0, [r0]
- lsls r1, r6, 1
- adds r0, 0xC
- adds r0, r1
- movs r3, 0
- ldrsh r0, [r0, r3]
- adds r5, r1, 0
- cmp r0, 0x57
- ble _080F7D10
-_080F7D0E:
- movs r4, 0x1
-_080F7D10:
- ldr r0, [r2]
- ldr r0, [r0]
- adds r0, 0xC
- adds r2, r0, r5
- ldrh r3, [r2]
- movs r0, 0
- ldrsh r1, [r2, r0]
- lsls r0, r7, 16
- asrs r0, 16
- cmp r1, r0
- bne _080F7D2A
- movs r1, 0x1
- mov r9, r1
-_080F7D2A:
- mov r0, r9
- cmp r0, 0
- bne _080F7D4A
- cmp r4, 0
- beq _080F7D3C
- strh r7, [r2]
- b _080F7D4A
- .pool
-_080F7D3C:
- mov r1, r12
- cmp r1, 0
- beq _080F7D46
- subs r0, r3, 0x1
- b _080F7D48
-_080F7D46:
- adds r0, r3, 0x1
-_080F7D48:
- strh r0, [r2]
-_080F7D4A:
- cmp r4, 0
- bne _080F7DC4
- mov r2, r9
- cmp r2, 0
- bne _080F7DCA
- movs r2, 0
-_080F7D56:
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r0, [r0]
- adds r0, 0xC
- adds r0, r5
- movs r1, 0
- ldrsh r3, [r0, r1]
- adds r0, r2, 0x1
- lsls r1, r0, 3
- adds r4, r0, 0
- cmp r3, r1
- blt _080F7D78
- movs r0, 0x8
- b _080F7D94
- .pool
-_080F7D78:
- lsls r0, r2, 3
- cmp r3, r0
- blt _080F7D92
- adds r0, r3, 0
- cmp r3, 0
- bge _080F7D86
- adds r0, r3, 0x7
-_080F7D86:
- asrs r0, 3
- lsls r0, 3
- subs r0, r3, r0
- lsls r0, 24
- lsrs r0, 24
- b _080F7D94
-_080F7D92:
- movs r0, 0
-_080F7D94:
- cmp r0, 0x3
- bhi _080F7DA0
- ldr r3, =0x0000504c
- b _080F7DA2
- .pool
-_080F7DA0:
- ldr r3, =0x00005057
-_080F7DA2:
- adds r1, r0, r3
- adds r2, 0x7
- lsls r2, 24
- lsrs r2, 24
- adds r3, r5, r6
- adds r3, 0x6
- lsls r3, 24
- movs r0, 0x1
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0x2
- lsrs r3, 24
- bl FillBgTilemapBufferRect_Palette0
- adds r2, r4, 0
- cmp r2, 0xA
- ble _080F7D56
-_080F7DC4:
- mov r0, r9
- cmp r0, 0
- beq _080F7DDC
-_080F7DCA:
- ldr r0, =gUnknown_0203A034
- ldr r0, [r0]
- ldr r1, [r0]
- ldrb r0, [r1, 0x14]
- subs r0, 0x1
- strb r0, [r1, 0x14]
- mov r0, r8
- bl DestroyTask
-_080F7DDC:
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F7CA8
-
- thumb_func_start sub_80F7DF4
-sub_80F7DF4: @ 80F7DF4
- push {r4,r5,lr}
- ldr r4, =gUnknown_0203A034
- movs r0, 0x20
- bl AllocZeroed
- str r0, [r4]
- movs r0, 0x18
- bl AllocZeroed
- ldr r1, [r4]
- str r0, [r1]
- movs r0, 0x50
- bl AllocZeroed
- ldr r1, [r4]
- str r0, [r1, 0x4]
- movs r5, 0x80
- lsls r5, 4
- adds r0, r5, 0
- bl AllocZeroed
- ldr r1, [r4]
- str r0, [r1, 0x8]
- adds r0, r5, 0
- bl AllocZeroed
- ldr r1, [r4]
- str r0, [r1, 0xC]
- adds r0, r5, 0
- bl AllocZeroed
- ldr r1, [r4]
- str r0, [r1, 0x10]
- adds r0, r5, 0
- bl AllocZeroed
- ldr r1, [r4]
- str r0, [r1, 0x14]
- adds r0, r5, 0
- bl AllocZeroed
- ldr r1, [r4]
- str r0, [r1, 0x18]
- movs r0, 0x80
- lsls r0, 5
- bl AllocZeroed
- ldr r1, [r4]
- str r0, [r1, 0x1C]
- bl AllocateMonSpritesGfx
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F7DF4
-
- thumb_func_start sub_80F7E64
-sub_80F7E64: @ 80F7E64
- push {r4,r5,lr}
- ldr r5, =gUnknown_0203A034
- ldr r0, [r5]
- ldr r0, [r0]
- bl Free
- ldr r0, [r5]
- movs r4, 0
- str r4, [r0]
- ldr r0, [r0, 0x4]
- bl Free
- ldr r0, [r5]
- str r4, [r0, 0x4]
- ldr r0, [r0, 0x8]
- bl Free
- ldr r0, [r5]
- str r4, [r0, 0x8]
- ldr r0, [r0, 0xC]
- bl Free
- ldr r0, [r5]
- str r4, [r0, 0xC]
- ldr r0, [r0, 0x10]
- bl Free
- ldr r0, [r5]
- str r4, [r0, 0x10]
- ldr r0, [r0, 0x14]
- bl Free
- ldr r0, [r5]
- str r4, [r0, 0x14]
- ldr r0, [r0, 0x18]
- bl Free
- ldr r0, [r5]
- str r4, [r0, 0x18]
- ldr r0, [r0, 0x1C]
- bl Free
- ldr r0, [r5]
- str r4, [r0, 0x1C]
- bl Free
- str r4, [r5]
- bl FreeMonSpritesGfx
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F7E64
-
- thumb_func_start sub_80F7ED0
-sub_80F7ED0: @ 80F7ED0
- push {r4,lr}
- sub sp, 0x10
- adds r4, r0, 0
- str r1, [sp]
- mov r0, sp
- movs r3, 0
- strb r4, [r0, 0x4]
- mov r1, sp
- movs r0, 0x7
- strb r0, [r1, 0x5]
- mov r0, sp
- strb r2, [r0, 0x6]
- movs r1, 0x2
- strb r1, [r0, 0x7]
- strb r2, [r0, 0x8]
- strb r1, [r0, 0x9]
- strb r3, [r0, 0xA]
- strb r3, [r0, 0xB]
- mov r3, sp
- ldrb r2, [r3, 0xC]
- subs r1, 0x12
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r3, 0xC]
- mov r2, sp
- movs r0, 0x10
- strb r0, [r2, 0xC]
- ldrb r0, [r2, 0xD]
- ands r1, r0
- strb r1, [r2, 0xD]
- mov r1, sp
- movs r0, 0x80
- strb r0, [r1, 0xD]
- mov r0, sp
- movs r1, 0
- movs r2, 0
- bl AddTextPrinter
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl PutWindowTilemap
- add sp, 0x10
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_80F7ED0
-
- thumb_func_start sub_80F7F30
-sub_80F7F30: @ 80F7F30
- push {r4,r5,lr}
- ldr r0, =gContestMonPartyIndex
- ldrb r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, =gPlayerParty
- adds r0, r1
- bl sub_80DAE0C
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- cmp r5, 0
- beq _080F7F5E
- ldr r4, =gSpecialVar_ContestCategory
- ldrb r0, [r4]
- ldr r1, =gSpecialVar_ContestRank
- ldrb r1, [r1]
- bl sub_80DAB8C
- ldrb r0, [r4]
- bl sub_80DB09C
-_080F7F5E:
- ldr r0, =gSpecialVar_Result
- strh r5, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F7F30
-
- thumb_func_start sub_80F7F7C
-sub_80F7F7C: @ 80F7F7C
- push {r4,lr}
- movs r4, 0
- ldr r0, =gContestMonPartyIndex
- ldrb r1, [r0]
- movs r0, 0x64
- muls r1, r0
- ldr r0, =gPlayerParty
- adds r2, r1, r0
- ldr r0, =gSpecialVar_ContestCategory
- ldrh r0, [r0]
- cmp r0, 0x4
- bhi _080F7FEE
- lsls r0, 2
- ldr r1, =_080F7FB0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F7FB0:
- .4byte _080F7FC4
- .4byte _080F7FCA
- .4byte _080F7FD0
- .4byte _080F7FD6
- .4byte _080F7FDC
-_080F7FC4:
- adds r0, r2, 0
- movs r1, 0x32
- b _080F7FE0
-_080F7FCA:
- adds r0, r2, 0
- movs r1, 0x33
- b _080F7FE0
-_080F7FD0:
- adds r0, r2, 0
- movs r1, 0x34
- b _080F7FE0
-_080F7FD6:
- adds r0, r2, 0
- movs r1, 0x35
- b _080F7FE0
-_080F7FDC:
- adds r0, r2, 0
- movs r1, 0x36
-_080F7FE0:
- bl GetMonData
- ldr r1, =gSpecialVar_ContestRank
- ldrh r1, [r1]
- cmp r0, r1
- bls _080F7FEE
- movs r4, 0x1
-_080F7FEE:
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80F7F7C
-
- thumb_func_start sub_80F7FFC
-sub_80F7FFC: @ 80F7FFC
- push {r4-r7,lr}
- sub sp, 0x4
- ldr r1, =gContestFinalStandings
- ldr r0, =gContestPlayerMonIndex
- ldrb r0, [r0]
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0
- beq _080F8010
- b _080F8250
-_080F8010:
- ldr r0, =gSpecialVar_ContestCategory
- ldrh r0, [r0]
- cmp r0, 0x4
- bls _080F801A
- b _080F8250
-_080F801A:
- lsls r0, 2
- ldr r1, =_080F8034
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_080F8034:
- .4byte _080F8048
- .4byte _080F80B8
- .4byte _080F8124
- .4byte _080F8190
- .4byte _080F81F8
-_080F8048:
- ldr r6, =gContestMonPartyIndex
- ldrb r0, [r6]
- movs r5, 0x64
- muls r0, r5
- ldr r4, =gPlayerParty
- adds r0, r4
- movs r1, 0x32
- bl GetMonData
- lsls r0, 24
- lsrs r1, r0, 24
- mov r0, sp
- strb r1, [r0]
- ldr r0, =gSpecialVar_ContestRank
- ldrh r0, [r0]
- cmp r1, r0
- bls _080F806C
- b _080F8250
-_080F806C:
- adds r0, r1, 0
- cmp r0, 0x3
- bls _080F8074
- b _080F8250
-_080F8074:
- adds r1, r0, 0x1
- mov r0, sp
- strb r1, [r0]
- ldrb r0, [r6]
- muls r0, r5
- adds r0, r4
- movs r1, 0x32
- mov r2, sp
- bl SetMonData
- ldrb r0, [r6]
- muls r0, r5
- adds r0, r4
- bl GetRibbonCount
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080F809C
- b _080F8250
-_080F809C:
- ldrb r0, [r6]
- muls r0, r5
- adds r0, r4
- movs r1, 0x32
- bl sub_80EE4DC
- b _080F8250
- .pool
-_080F80B8:
- mov r4, sp
- ldr r7, =gContestMonPartyIndex
- ldrb r0, [r7]
- movs r6, 0x64
- muls r0, r6
- ldr r5, =gPlayerParty
- adds r0, r5
- movs r1, 0x33
- bl GetMonData
- strb r0, [r4]
- mov r0, sp
- ldrb r2, [r0]
- ldr r0, =gSpecialVar_ContestRank
- ldrh r0, [r0]
- cmp r2, r0
- bls _080F80DC
- b _080F8250
-_080F80DC:
- cmp r2, 0x3
- bls _080F80E2
- b _080F8250
-_080F80E2:
- mov r1, sp
- adds r0, r2, 0x1
- strb r0, [r1]
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r5
- movs r1, 0x33
- mov r2, sp
- bl SetMonData
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r5
- bl GetRibbonCount
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bhi _080F810A
- b _080F8250
-_080F810A:
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r5
- movs r1, 0x33
- bl sub_80EE4DC
- b _080F8250
- .pool
-_080F8124:
- mov r4, sp
- ldr r7, =gContestMonPartyIndex
- ldrb r0, [r7]
- movs r6, 0x64
- muls r0, r6
- ldr r5, =gPlayerParty
- adds r0, r5
- movs r1, 0x34
- bl GetMonData
- strb r0, [r4]
- mov r0, sp
- ldrb r2, [r0]
- ldr r0, =gSpecialVar_ContestRank
- ldrh r0, [r0]
- cmp r2, r0
- bls _080F8148
- b _080F8250
-_080F8148:
- cmp r2, 0x3
- bls _080F814E
- b _080F8250
-_080F814E:
- mov r1, sp
- adds r0, r2, 0x1
- strb r0, [r1]
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r5
- movs r1, 0x34
- mov r2, sp
- bl SetMonData
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r5
- bl GetRibbonCount
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080F8250
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r5
- movs r1, 0x34
- bl sub_80EE4DC
- b _080F8250
- .pool
-_080F8190:
- mov r4, sp
- ldr r7, =gContestMonPartyIndex
- ldrb r0, [r7]
- movs r6, 0x64
- muls r0, r6
- ldr r5, =gPlayerParty
- adds r0, r5
- movs r1, 0x35
- bl GetMonData
- strb r0, [r4]
- mov r0, sp
- ldrb r2, [r0]
- ldr r0, =gSpecialVar_ContestRank
- ldrh r0, [r0]
- cmp r2, r0
- bhi _080F8250
- cmp r2, 0x3
- bhi _080F8250
- mov r1, sp
- adds r0, r2, 0x1
- strb r0, [r1]
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r5
- movs r1, 0x35
- mov r2, sp
- bl SetMonData
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r5
- bl GetRibbonCount
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080F8250
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r5
- movs r1, 0x35
- bl sub_80EE4DC
- b _080F8250
- .pool
-_080F81F8:
- mov r4, sp
- ldr r7, =gContestMonPartyIndex
- ldrb r0, [r7]
- movs r6, 0x64
- muls r0, r6
- ldr r5, =gPlayerParty
- adds r0, r5
- movs r1, 0x36
- bl GetMonData
- strb r0, [r4]
- mov r0, sp
- ldrb r2, [r0]
- ldr r0, =gSpecialVar_ContestRank
- ldrh r0, [r0]
- cmp r2, r0
- bhi _080F8250
- cmp r2, 0x3
- bhi _080F8250
- mov r1, sp
- adds r0, r2, 0x1
- strb r0, [r1]
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r5
- movs r1, 0x36
- mov r2, sp
- bl SetMonData
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r5
- bl GetRibbonCount
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bls _080F8250
- ldrb r0, [r7]
- muls r0, r6
- adds r0, r5
- movs r1, 0x36
- bl sub_80EE4DC
-_080F8250:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F7FFC
-
- thumb_func_start sub_80F8264
-sub_80F8264: @ 80F8264
- push {r4,lr}
- ldr r4, =gStringVar1
- ldr r0, =gSpecialVar_0x8006
- ldrh r1, [r0]
- lsls r1, 6
- ldr r0, =gContestMons + 13
- adds r1, r0
- adds r0, r4, 0
- bl StringCopy
- adds r0, r4, 0
- bl sub_81DB5AC
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F8264
-
- thumb_func_start sub_80F8290
-sub_80F8290: @ 80F8290
- push {lr}
- ldr r0, =gStringVar3
- ldr r1, =gSpecialVar_0x8006
- ldrh r1, [r1]
- lsls r1, 6
- ldr r2, =gContestMons + 2
- adds r1, r2
- bl StringCopy
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F8290
-
- thumb_func_start sub_80F82B4
-sub_80F82B4: @ 80F82B4
- push {r4-r6,lr}
- movs r1, 0
- movs r2, 0
- ldr r5, =gSpecialVar_0x8004
- ldr r4, =gContestMonConditions
- ldr r0, =gSpecialVar_0x8006
- ldrh r0, [r0]
- lsls r0, 1
- adds r0, r4
- movs r6, 0
- ldrsh r3, [r0, r6]
-_080F82CA:
- lsls r0, r1, 1
- adds r0, r4
- movs r6, 0
- ldrsh r0, [r0, r6]
- cmp r3, r0
- bge _080F82DC
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
-_080F82DC:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x3
- bls _080F82CA
- strh r2, [r5]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F82B4
-
- thumb_func_start sub_80F82FC
-sub_80F82FC: @ 80F82FC
- ldr r2, =gSpecialVar_0x8004
- ldr r1, =gContestMonConditions
- ldr r0, =gSpecialVar_0x8006
- ldrh r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r2]
- bx lr
- .pool
- thumb_func_end sub_80F82FC
-
- thumb_func_start sub_80F831C
-sub_80F831C: @ 80F831C
- push {lr}
- movs r1, 0
- ldr r2, =gContestFinalStandings
- ldrb r0, [r2]
- ldr r3, =gSpecialVar_0x8005
- cmp r0, 0
- beq _080F833C
-_080F832A:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x3
- bhi _080F833C
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F832A
-_080F833C:
- strh r1, [r3]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F831C
-
- thumb_func_start sub_80F834C
-sub_80F834C: @ 80F834C
- push {r4,lr}
- movs r1, 0
- ldr r2, =gContestFinalStandings
- ldrb r0, [r2]
- ldr r4, =gStringVar3
- ldr r3, =gContestMons + 13
- cmp r0, 0
- beq _080F836E
-_080F835C:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x3
- bhi _080F836E
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F835C
-_080F836E:
- lsls r1, 6
- adds r1, r3
- adds r0, r4, 0
- bl StringCopy
- adds r0, r4, 0
- bl sub_81DB5AC
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F834C
-
- thumb_func_start sub_80F8390
-sub_80F8390: @ 80F8390
- push {r4,lr}
- movs r1, 0
- ldr r2, =gContestFinalStandings
- ldrb r0, [r2]
- ldr r4, =gStringVar1
- ldr r3, =gContestMons + 2
- cmp r0, 0
- beq _080F83B2
-_080F83A0:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x3
- bhi _080F83B2
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F83A0
-_080F83B2:
- lsls r1, 6
- adds r1, r3
- adds r0, r4, 0
- bl StringCopy
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F8390
-
- thumb_func_start sub_80F83D0
-sub_80F83D0: @ 80F83D0
- push {lr}
- ldr r0, =sub_80D7B24
- bl SetMainCallback2
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F83D0
-
- thumb_func_start sub_80F83E0
-sub_80F83E0: @ 80F83E0
- 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 _080F83FE
- adds r0, r2, 0
- bl DestroyTask
- ldr r0, =sub_80F83D0
- bl SetMainCallback2
-_080F83FE:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F83E0
-
- thumb_func_start sub_80F840C
-sub_80F840C: @ 80F840C
- push {lr}
- sub sp, 0x4
- bl ScriptContext2_Enable
- ldr r0, =sub_80F83E0
- 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
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F840C
-
- thumb_func_start sub_80F8438
-sub_80F8438: @ 80F8438
- ldr r2, =gSpecialVar_0x8004
- ldr r1, =gContestMons
- ldr r0, =gSpecialVar_0x8006
- ldrh r0, [r0]
- lsls r0, 6
- adds r0, r1
- ldrh r0, [r0]
- strh r0, [r2]
- bx lr
- .pool
- thumb_func_end sub_80F8438
-
- thumb_func_start sub_80F8458
-sub_80F8458: @ 80F8458
- 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 _080F8476
- adds r0, r2, 0
- bl DestroyTask
- ldr r0, =sub_80F5B00
- bl SetMainCallback2
-_080F8476:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F8458
-
- thumb_func_start sub_80F8484
-sub_80F8484: @ 80F8484
- push {lr}
- sub sp, 0x4
- bl ScriptContext2_Enable
- ldr r0, =sub_80F8458
- 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
- add sp, 0x4
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F8484
-
- thumb_func_start sub_80F84B0
-sub_80F84B0: @ 80F84B0
- ldr r0, =gSpecialVar_0x8004
- ldr r1, =gContestPlayerMonIndex
- ldrb r1, [r1]
- strh r1, [r0]
- bx lr
- .pool
- thumb_func_end sub_80F84B0
-
- thumb_func_start sub_80F84C4
-sub_80F84C4: @ 80F84C4
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- bl ScriptContext2_Enable
- ldr r6, =sub_80FC580
- adds r0, r6, 0
- movs r1, 0
- bl CreateTask
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r2, =sub_80F8508
- adds r0, r4, 0
- adds r1, r6, 0
- bl SetTaskFuncWithFollowupFunc
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- strh r5, [r0, 0x1A]
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F84C4
-
- thumb_func_start sub_80F8508
-sub_80F8508: @ 80F8508
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, =gIsLinkContest
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _080F8540
- ldr r0, =gContestMonPartyIndex
- ldrb r0, [r0]
- bl sub_80DA8C8
- ldr r1, =sub_80FC6BC
- ldr r2, =sub_80F8568
- adds r0, r4, 0
- bl SetTaskFuncWithFollowupFunc
- b _080F8556
- .pool
-_080F8540:
- ldr r0, =gContestMonPartyIndex
- ldrb r0, [r0]
- bl sub_80DA8C8
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_81D9DE4
- str r1, [r0]
-_080F8556:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F8508
-
- thumb_func_start sub_80F8568
-sub_80F8568: @ 80F8568
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =sub_80FC804
- ldr r2, =sub_80F8584
- bl SetTaskFuncWithFollowupFunc
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F8568
-
- thumb_func_start sub_80F8584
-sub_80F8584: @ 80F8584
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =sub_80FCE48
- ldr r2, =sub_80F85A0
- bl SetTaskFuncWithFollowupFunc
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F8584
-
- thumb_func_start sub_80F85A0
-sub_80F85A0: @ 80F85A0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =sub_80FC894
- ldr r2, =sub_80F85BC
- bl SetTaskFuncWithFollowupFunc
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F85A0
-
- thumb_func_start sub_80F85BC
-sub_80F85BC: @ 80F85BC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r6, r0, 24
- movs r0, 0
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r3, 0
- ldr r5, =gNumLinkContestPlayers
- mov r12, r5
- ldr r0, =gSpecialVar_0x8004
- mov r9, r0
- add r1, sp, 0x4
- mov r8, r1
- ldrb r0, [r5]
- cmp r3, r0
- bcs _080F8606
- lsls r0, r6, 2
- adds r0, r6
- lsls r4, r0, 3
- ldr r7, =gTasks + 0x8
-_080F85EC:
- mov r1, sp
- adds r2, r1, r3
- adds r1, r3, 0x1
- lsls r0, r1, 1
- adds r0, r4
- adds r0, r7
- ldrh r0, [r0]
- strb r0, [r2]
- lsls r1, 24
- lsrs r3, r1, 24
- ldrb r0, [r5]
- cmp r3, r0
- bcc _080F85EC
-_080F8606:
- movs r3, 0
- mov r1, r12
- ldrb r0, [r1]
- cmp r3, r0
- bcs _080F862A
- adds r4, r0, 0
- mov r2, sp
-_080F8614:
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, r4
- bcs _080F862A
- mov r0, sp
- adds r1, r0, r3
- ldrb r0, [r2]
- ldrb r1, [r1]
- cmp r0, r1
- beq _080F8614
-_080F862A:
- mov r1, r12
- ldrb r1, [r1]
- cmp r3, r1
- bne _080F8644
- movs r0, 0
- b _080F8646
- .pool
-_080F8644:
- movs r0, 0x1
-_080F8646:
- mov r1, r9
- strh r0, [r1]
- movs r3, 0
- mov r4, r12
- ldrb r0, [r4]
- cmp r3, r0
- bcs _080F8678
- mov r5, r8
- lsls r0, r6, 2
- adds r0, r6
- lsls r2, r0, 3
- ldr r7, =gTasks + 0x8
-_080F865E:
- adds r1, r5, r3
- adds r0, r3, 0x5
- lsls r0, 1
- adds r0, r2
- adds r0, r7
- ldrh r0, [r0]
- strb r0, [r1]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- ldrb r1, [r4]
- cmp r3, r1
- bcc _080F865E
-_080F8678:
- mov r0, r8
- bl sub_80F86E0
- ldr r1, =gUnknown_02039F2B
- strb r0, [r1]
- ldr r0, =gSpecialVar_ContestCategory
- ldrb r0, [r0]
- bl sub_80DB09C
- ldr r1, =sub_80FCF40
- ldr r2, =sub_80F86B8
- adds r0, r6, 0
- bl SetTaskFuncWithFollowupFunc
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F85BC
-
- thumb_func_start sub_80F86B8
-sub_80F86B8: @ 80F86B8
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- bl sub_80DCE58
- ldr r1, =sub_80FCFD0
- ldr r2, =sub_80F8714
- adds r0, r4, 0
- bl SetTaskFuncWithFollowupFunc
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F86B8
-
- thumb_func_start sub_80F86E0
-sub_80F86E0: @ 80F86E0
- push {r4,r5,lr}
- adds r3, r0, 0
- movs r4, 0
- movs r2, 0x1
- ldr r0, =gNumLinkContestPlayers
- ldrb r0, [r0]
- cmp r2, r0
- bge _080F8708
- adds r5, r0, 0
-_080F86F2:
- adds r0, r3, r4
- adds r1, r3, r2
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bcs _080F8702
- lsls r0, r2, 24
- lsrs r4, r0, 24
-_080F8702:
- adds r2, 0x1
- cmp r2, r5
- blt _080F86F2
-_080F8708:
- adds r0, r4, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_80F86E0
-
- thumb_func_start sub_80F8714
-sub_80F8714: @ 80F8714
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, =gSpecialVar_0x8004
- ldrh r0, [r0]
- cmp r0, 0x1
- bne _080F8748
- bl IsLinkTaskFinished
- lsls r0, 24
- cmp r0, 0
- beq _080F877E
- ldr r0, =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- ldr r0, =sub_80F878C
- str r0, [r1]
- b _080F877E
- .pool
-_080F8748:
- ldr r5, =gContestMons + 2
- movs r4, 0x3
-_080F874C:
- adds r0, r5, 0
- bl StringGetEnd10
- adds r5, 0x40
- subs r4, 0x1
- cmp r4, 0
- bge _080F874C
- adds r0, r6, 0
- bl DestroyTask
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x4
- ldrsb r1, [r0, r1]
- movs r2, 0x5
- ldrsb r2, [r0, r2]
- movs r3, 0x1
- negs r3, r3
- movs r0, 0
- bl SetDynamicWarp
- bl ScriptContext2_Disable
- bl EnableBothScriptContexts
-_080F877E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F8714
-
- thumb_func_start sub_80F878C
-sub_80F878C: @ 80F878C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_800AC34
- ldr r1, =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, =sub_80F87B4
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F878C
-
- thumb_func_start sub_80F87B4
-sub_80F87B4: @ 80F87B4
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- ldr r0, =gReceivedRemoteLinkPlayers
- ldrb r0, [r0]
- cmp r0, 0
- bne _080F87D0
- adds r0, r1, 0
- bl DestroyTask
- bl ScriptContext2_Disable
- bl EnableBothScriptContexts
-_080F87D0:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_80F87B4
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/easy_chat.s b/asm/easy_chat.s
index 7a46f12c5..50e707ac3 100644
--- a/asm/easy_chat.s
+++ b/asm/easy_chat.s
@@ -5,5978 +5,6 @@
.text
- thumb_func_start sub_811ACDC
-sub_811ACDC: @ 811ACDC
- push {r4-r6,lr}
- ldr r2, =gMain
- ldrh r1, [r2, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0811AD4A
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0, 0x5]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0x1
- beq _0811AD3E
- b _0811AD24
- .pool
-_0811AD04:
- movs r0, 0x20
- ands r0, r2
- lsls r0, 16
- lsrs r3, r0, 16
- cmp r3, 0
- bne _0811ADE0
- movs r0, 0x80
- ands r0, r2
- cmp r0, 0
- bne _0811ADD0
- movs r0, 0x10
- ands r0, r2
- cmp r0, 0
- bne _0811ADC0
- movs r0, 0
- b _0811AE32
-_0811AD24:
- cmp r0, 0x1
- bgt _0811AD2E
- cmp r0, 0
- beq _0811AD38
- b _0811AD4A
-_0811AD2E:
- cmp r0, 0x2
- beq _0811ADF6
- cmp r0, 0x3
- beq _0811AD44
- b _0811AD4A
-_0811AD38:
- bl sub_811B184
- b _0811ADFA
-_0811AD3E:
- bl sub_811B150
- b _0811ADFA
-_0811AD44:
- bl sub_811B264
- b _0811ADFA
-_0811AD4A:
- ldrh r2, [r2, 0x2E]
- movs r0, 0x2
- ands r0, r2
- cmp r0, 0
- bne _0811ADF0
- movs r0, 0x8
- ands r0, r2
- cmp r0, 0
- bne _0811ADF6
- movs r0, 0x40
- ands r0, r2
- cmp r0, 0
- beq _0811AD04
- ldr r2, =gUnknown_0203A118
- ldr r1, [r2]
- ldrb r0, [r1, 0x6]
- subs r0, 0x1
- strb r0, [r1, 0x6]
-_0811AD6E:
- adds r6, r2, 0
-_0811AD70:
- adds r5, r6, 0
- ldr r4, [r5]
- movs r3, 0x6
- ldrsb r3, [r4, r3]
- ldr r2, =gUnknown_08597550
- ldrb r1, [r4, 0x1]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r1, r0, r2
- ldrb r0, [r1, 0x2]
- cmp r3, r0
- bne _0811AE00
- bl sub_811BA3C
- movs r2, 0x3
- cmp r0, 0
- beq _0811AD96
- movs r2, 0x4
-_0811AD96:
- ldr r1, [r5]
- movs r0, 0x5
- ldrsb r0, [r1, r0]
- cmp r0, 0
- bge _0811ADA4
- subs r0, r2, 0x1
- strb r0, [r1, 0x5]
-_0811ADA4:
- ldr r1, [r5]
- movs r0, 0x5
- ldrsb r0, [r1, r0]
- cmp r0, r2
- blt _0811ADB2
- movs r0, 0
- strb r0, [r1, 0x5]
-_0811ADB2:
- movs r0, 0x3
- b _0811AE32
- .pool
-_0811ADC0:
- ldr r2, =gUnknown_0203A118
- ldr r1, [r2]
- ldrb r0, [r1, 0x5]
- adds r0, 0x1
- strb r0, [r1, 0x5]
- b _0811AD6E
- .pool
-_0811ADD0:
- ldr r1, =gUnknown_0203A118
- ldr r0, [r1]
- strb r3, [r0, 0x6]
- adds r6, r1, 0
- b _0811AD70
- .pool
-_0811ADE0:
- ldr r2, =gUnknown_0203A118
- ldr r1, [r2]
- ldrb r0, [r1, 0x5]
- subs r0, 0x1
- strb r0, [r1, 0x5]
- b _0811AD6E
- .pool
-_0811ADF0:
- bl sub_811B150
- b _0811ADFA
-_0811ADF6:
- bl sub_811B1B4
-_0811ADFA:
- lsls r0, 16
- lsrs r0, 16
- b _0811AE32
-_0811AE00:
- movs r0, 0x5
- ldrsb r0, [r4, r0]
- ldrb r1, [r1, 0x1]
- cmp r0, r1
- blt _0811AE0E
- subs r0, r1, 0x1
- strb r0, [r4, 0x5]
-_0811AE0E:
- bl sub_811AB44
- cmp r0, 0
- beq _0811AE28
- ldr r2, [r6]
- ldr r0, [r2, 0x4]
- ldr r1, =0x00ffff00
- ands r0, r1
- ldr r1, =0x00040100
- cmp r0, r1
- bne _0811AE28
- movs r0, 0
- strb r0, [r2, 0x5]
-_0811AE28:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- movs r0, 0
- strb r0, [r1, 0x4]
- movs r0, 0x2
-_0811AE32:
- pop {r4-r6}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_811ACDC
-
- thumb_func_start sub_811AE44
-sub_811AE44: @ 811AE44
- push {lr}
- ldr r1, =gMain
- ldrh r2, [r1, 0x2E]
- movs r0, 0x2
- ands r0, r2
- adds r3, r1, 0
- cmp r0, 0
- beq _0811AE60
- bl sub_811B32C
- b _0811AEF6
- .pool
-_0811AE60:
- movs r0, 0x1
- ands r0, r2
- cmp r0, 0
- beq _0811AEAE
- ldr r0, =gUnknown_0203A118
- ldr r2, [r0]
- movs r1, 0xA
- ldrsb r1, [r2, r1]
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0811AE84
- bl sub_811B2B0
- b _0811AEF6
- .pool
-_0811AE84:
- movs r0, 0xB
- ldrsb r0, [r2, r0]
- cmp r0, 0x1
- beq _0811AEA2
- cmp r0, 0x1
- bgt _0811AE96
- cmp r0, 0
- beq _0811AE9C
- b _0811AEAE
-_0811AE96:
- cmp r0, 0x2
- beq _0811AEA8
- b _0811AEAE
-_0811AE9C:
- bl sub_811B33C
- b _0811AEF6
-_0811AEA2:
- bl sub_811B368
- b _0811AEF6
-_0811AEA8:
- bl sub_811B32C
- b _0811AEF6
-_0811AEAE:
- ldrh r1, [r3, 0x2E]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0811AEBE
- bl sub_811B33C
- b _0811AEF6
-_0811AEBE:
- ldrh r1, [r3, 0x30]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0811AECC
- movs r0, 0x2
- b _0811AEF2
-_0811AECC:
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0811AED8
- movs r0, 0x3
- b _0811AEF2
-_0811AED8:
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0811AEE4
- movs r0, 0x1
- b _0811AEF2
-_0811AEE4:
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _0811AEF0
- movs r0, 0
- b _0811AEFA
-_0811AEF0:
- movs r0, 0
-_0811AEF2:
- bl sub_811B528
-_0811AEF6:
- lsls r0, 16
- lsrs r0, 16
-_0811AEFA:
- pop {r1}
- bx r1
- thumb_func_end sub_811AE44
-
- thumb_func_start sub_811AF00
-sub_811AF00: @ 811AF00
- push {lr}
- ldr r2, =gMain
- ldrh r1, [r2, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0811AF24
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- movs r0, 0x2
- strb r0, [r1, 0x4]
- movs r0, 0xE
- b _0811AF86
- .pool
-_0811AF24:
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0811AF32
- bl sub_811B394
- b _0811AF82
-_0811AF32:
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _0811AF3E
- movs r0, 0x4
- b _0811AF7E
-_0811AF3E:
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0811AF4A
- movs r0, 0x5
- b _0811AF7E
-_0811AF4A:
- ldrh r1, [r2, 0x30]
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _0811AF58
- movs r0, 0x2
- b _0811AF7E
-_0811AF58:
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _0811AF64
- movs r0, 0x3
- b _0811AF7E
-_0811AF64:
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0811AF70
- movs r0, 0x1
- b _0811AF7E
-_0811AF70:
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _0811AF7C
- movs r0, 0
- b _0811AF86
-_0811AF7C:
- movs r0, 0
-_0811AF7E:
- bl sub_811B794
-_0811AF82:
- lsls r0, 16
- lsrs r0, 16
-_0811AF86:
- pop {r1}
- bx r1
- thumb_func_end sub_811AF00
-
- thumb_func_start sub_811AF8C
-sub_811AF8C: @ 811AF8C
- push {lr}
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _0811AFC0
- cmp r1, 0
- bgt _0811AFA8
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0811AFAC
- b _0811AFE4
-_0811AFA8:
- cmp r1, 0x1
- bne _0811AFE4
-_0811AFAC:
- bl sub_811B2A4
- ldr r1, =gUnknown_0203A118
- ldr r1, [r1]
- strb r0, [r1, 0x4]
- movs r0, 0x7
- b _0811AFE6
- .pool
-_0811AFC0:
- ldr r0, =gSpecialVar_Result
- strh r1, [r0]
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0]
- subs r0, 0x11
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _0811AFD8
- bl sub_811B3E4
-_0811AFD8:
- movs r0, 0x18
- b _0811AFE6
- .pool
-_0811AFE4:
- movs r0, 0
-_0811AFE6:
- pop {r1}
- bx r1
- thumb_func_end sub_811AF8C
-
- thumb_func_start sub_811AFEC
-sub_811AFEC: @ 811AFEC
- push {r4,lr}
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _0811B020
- cmp r1, 0
- bgt _0811B008
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0811B00C
- b _0811B038
-_0811B008:
- cmp r1, 0x1
- bne _0811B038
-_0811B00C:
- bl sub_811B2A4
- ldr r1, =gUnknown_0203A118
- ldr r1, [r1]
- strb r0, [r1, 0x4]
- movs r0, 0x7
- b _0811B03A
- .pool
-_0811B020:
- bl sub_811BE9C
- ldr r4, =gSpecialVar_Result
- bl sub_811B4EC
- strh r0, [r4]
- bl sub_811B3E4
- movs r0, 0x18
- b _0811B03A
- .pool
-_0811B038:
- movs r0, 0
-_0811B03A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811AFEC
-
- thumb_func_start sub_811B040
-sub_811B040: @ 811B040
- push {lr}
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _0811B070
- cmp r1, 0
- bgt _0811B05C
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0811B060
- b _0811B084
-_0811B05C:
- cmp r1, 0x1
- bne _0811B084
-_0811B060:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- movs r0, 0x1
- strb r0, [r1, 0x4]
- movs r0, 0x7
- b _0811B086
- .pool
-_0811B070:
- bl sub_811B418
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- movs r0, 0x1
- strb r0, [r1, 0x4]
- movs r0, 0x8
- b _0811B086
- .pool
-_0811B084:
- movs r0, 0
-_0811B086:
- pop {r1}
- bx r1
- thumb_func_end sub_811B040
-
- thumb_func_start sub_811B08C
-sub_811B08C: @ 811B08C
- push {lr}
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0811B0A4
- movs r0, 0x1A
- b _0811B0B8
- .pool
-_0811B0A4:
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _0811B0B0
- movs r0, 0
- b _0811B0B8
-_0811B0B0:
- bl sub_811B150
- lsls r0, 16
- lsrs r0, 16
-_0811B0B8:
- pop {r1}
- bx r1
- thumb_func_end sub_811B08C
-
- thumb_func_start sub_811B0BC
-sub_811B0BC: @ 811B0BC
- push {lr}
- ldr r0, =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x3
- ands r0, r1
- cmp r0, 0
- bne _0811B0D4
- movs r0, 0
- b _0811B0E0
- .pool
-_0811B0D4:
- bl sub_811B2A4
- ldr r1, =gUnknown_0203A118
- ldr r1, [r1]
- strb r0, [r1, 0x4]
- movs r0, 0x7
-_0811B0E0:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_811B0BC
-
- thumb_func_start sub_811B0E8
-sub_811B0E8: @ 811B0E8
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- movs r0, 0xA
- strb r0, [r1, 0x4]
- movs r0, 0x6
- bx lr
- .pool
- thumb_func_end sub_811B0E8
-
- thumb_func_start sub_811B0F8
-sub_811B0F8: @ 811B0F8
- push {r4,lr}
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _0811B134
- cmp r1, 0
- bgt _0811B114
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0811B118
- b _0811B148
-_0811B114:
- cmp r1, 0x1
- bne _0811B148
-_0811B118:
- bl sub_811B454
- ldr r2, =gUnknown_0203A118
- ldr r1, [r2]
- movs r0, 0
- strb r0, [r1, 0x8]
- ldr r1, [r2]
- movs r0, 0x8
- strb r0, [r1, 0x4]
- movs r0, 0x1F
- b _0811B14A
- .pool
-_0811B134:
- ldr r4, =gSpecialVar_Result
- bl sub_811B4EC
- strh r0, [r4]
- bl sub_811B3E4
- movs r0, 0x18
- b _0811B14A
- .pool
-_0811B148:
- movs r0, 0
-_0811B14A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811B0F8
-
- thumb_func_start sub_811B150
-sub_811B150: @ 811B150
- push {lr}
- ldr r1, =gUnknown_0203A118
- ldr r2, [r1]
- ldrb r0, [r2]
- cmp r0, 0x13
- beq _0811B160
- cmp r0, 0xB
- bne _0811B174
-_0811B160:
- ldrb r0, [r2, 0x4]
- strb r0, [r2, 0x8]
- ldr r1, [r1]
- movs r0, 0x8
- strb r0, [r1, 0x4]
- movs r0, 0x22
- b _0811B180
- .pool
-_0811B174:
- ldrb r0, [r2, 0x4]
- strb r0, [r2, 0x8]
- ldr r1, [r1]
- movs r0, 0x4
- strb r0, [r1, 0x4]
- movs r0, 0x5
-_0811B180:
- pop {r1}
- bx r1
- thumb_func_end sub_811B150
-
- thumb_func_start sub_811B184
-sub_811B184: @ 811B184
- push {lr}
- ldr r2, =gUnknown_0203A118
- ldr r0, [r2]
- ldrb r1, [r0, 0x4]
- strb r1, [r0, 0x8]
- ldr r1, [r2]
- ldrb r0, [r1]
- cmp r0, 0x6
- bne _0811B1A8
- ldrb r0, [r1, 0x4]
- strb r0, [r1, 0x8]
- ldr r1, [r2]
- movs r0, 0x8
- strb r0, [r1, 0x4]
- movs r0, 0x20
- b _0811B1AE
- .pool
-_0811B1A8:
- movs r0, 0x5
- strb r0, [r1, 0x4]
- movs r0, 0x4
-_0811B1AE:
- pop {r1}
- bx r1
- thumb_func_end sub_811B184
-
- thumb_func_start sub_811B1B4
-sub_811B1B4: @ 811B1B4
- push {r4,lr}
- ldr r4, =gUnknown_0203A118
- ldr r1, [r4]
- ldrb r0, [r1, 0x4]
- strb r0, [r1, 0x8]
- ldr r1, [r4]
- ldrb r0, [r1]
- cmp r0, 0x11
- bne _0811B1DC
- bl sub_811BD64
- cmp r0, 0
- bne _0811B1FA
- bl sub_811BDB0
- cmp r0, 0
- bne _0811B1E8
- b _0811B256
- .pool
-_0811B1DC:
- cmp r0, 0x12
- bne _0811B204
- bl sub_811BDB0
- cmp r0, 0
- beq _0811B1F2
-_0811B1E8:
- ldr r1, [r4]
- movs r0, 0x8
- strb r0, [r1, 0x4]
- movs r0, 0x1E
- b _0811B25C
-_0811B1F2:
- bl sub_811BD64
- cmp r0, 0
- beq _0811B256
-_0811B1FA:
- ldr r1, [r4]
- movs r0, 0x8
- strb r0, [r1, 0x4]
- movs r0, 0x1D
- b _0811B25C
-_0811B204:
- cmp r0, 0x9
- beq _0811B20C
- cmp r0, 0xD
- bne _0811B21E
-_0811B20C:
- bl sub_811BD2C
- cmp r0, 0
- bne _0811B256
- ldr r1, [r4]
- movs r0, 0x8
- strb r0, [r1, 0x4]
- movs r0, 0x21
- b _0811B25C
-_0811B21E:
- cmp r0, 0x13
- beq _0811B226
- cmp r0, 0xB
- bne _0811B238
-_0811B226:
- bl sub_811BCF4
- cmp r0, 0
- beq _0811B256
- ldr r1, [r4]
- movs r0, 0x8
- strb r0, [r1, 0x4]
- movs r0, 0x22
- b _0811B25C
-_0811B238:
- cmp r0, 0x14
- beq _0811B258
- bl sub_811BCF4
- cmp r0, 0x1
- beq _0811B24C
- bl sub_811B4EC
- cmp r0, 0
- bne _0811B256
-_0811B24C:
- ldr r1, [r4]
- movs r0, 0x4
- strb r0, [r1, 0x4]
- movs r0, 0x5
- b _0811B25C
-_0811B256:
- ldr r1, [r4]
-_0811B258:
- movs r0, 0x6
- strb r0, [r1, 0x4]
-_0811B25C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811B1B4
-
- thumb_func_start sub_811B264
-sub_811B264: @ 811B264
- push {lr}
- ldr r2, =gUnknown_0203A118
- ldr r1, [r2]
- ldrb r0, [r1, 0x4]
- strb r0, [r1, 0x8]
- ldr r0, [r2]
- ldrb r0, [r0]
- cmp r0, 0x11
- beq _0811B28E
- cmp r0, 0x11
- bgt _0811B284
- cmp r0, 0xF
- beq _0811B28A
- b _0811B29E
- .pool
-_0811B284:
- cmp r0, 0x12
- beq _0811B296
- b _0811B29E
-_0811B28A:
- movs r0, 0x19
- b _0811B2A0
-_0811B28E:
- bl sub_811B3E4
- movs r0, 0x1C
- b _0811B2A0
-_0811B296:
- bl sub_811B3E4
- movs r0, 0x1B
- b _0811B2A0
-_0811B29E:
- movs r0, 0
-_0811B2A0:
- pop {r1}
- bx r1
- thumb_func_end sub_811B264
-
- thumb_func_start sub_811B2A4
-sub_811B2A4: @ 811B2A4
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- bx lr
- .pool
- thumb_func_end sub_811B2A4
-
- thumb_func_start sub_811B2B0
-sub_811B2B0: @ 811B2B0
- push {lr}
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0, 0x9]
- cmp r0, 0
- bne _0811B2DC
- bl sub_811B8E8
- lsls r0, 24
- lsrs r0, 24
- bl sub_811F3B8
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0
- bl sub_811F548
- b _0811B2EC
- .pool
-_0811B2DC:
- bl sub_811B908
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- movs r0, 0x1
- bl sub_811F548
-_0811B2EC:
- bl sub_811F5B0
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- beq _0811B324
- ldr r2, =gUnknown_0203A118
- ldr r3, [r2]
- subs r0, 0x1
- lsrs r1, r0, 31
- adds r0, r1
- asrs r0, 1
- movs r1, 0
- strb r0, [r3, 0xF]
- ldr r0, [r2]
- strb r1, [r0, 0xE]
- ldr r0, [r2]
- strb r1, [r0, 0x10]
- ldr r0, [r2]
- strb r1, [r0, 0x11]
- ldr r1, [r2]
- movs r0, 0x3
- strb r0, [r1, 0x4]
- movs r0, 0xB
- b _0811B326
- .pool
-_0811B324:
- movs r0, 0
-_0811B326:
- pop {r1}
- bx r1
- thumb_func_end sub_811B2B0
-
- thumb_func_start sub_811B32C
-sub_811B32C: @ 811B32C
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- movs r0, 0
- strb r0, [r1, 0x4]
- movs r0, 0xA
- bx lr
- .pool
- thumb_func_end sub_811B32C
-
- thumb_func_start sub_811B33C
-sub_811B33C: @ 811B33C
- push {lr}
- ldr r1, =gUnknown_0203A118
- ldr r0, [r1]
- movs r2, 0
- strb r2, [r0, 0xA]
- ldr r0, [r1]
- strb r2, [r0, 0xB]
- ldr r0, [r1]
- strb r2, [r0, 0xC]
- ldr r1, [r1]
- ldrb r0, [r1, 0x9]
- cmp r0, 0
- bne _0811B360
- movs r0, 0x1
- strb r0, [r1, 0x9]
- b _0811B362
- .pool
-_0811B360:
- strb r2, [r1, 0x9]
-_0811B362:
- movs r0, 0x17
- pop {r1}
- bx r1
- thumb_func_end sub_811B33C
-
- thumb_func_start sub_811B368
-sub_811B368: @ 811B368
- push {lr}
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0]
- cmp r0, 0x6
- beq _0811B388
- ldr r0, =0x0000ffff
- bl sub_811B488
- movs r0, 0x1
- b _0811B390
- .pool
-_0811B388:
- movs r0, 0x20
- bl PlaySE
- movs r0, 0
-_0811B390:
- pop {r1}
- bx r1
- thumb_func_end sub_811B368
-
- thumb_func_start sub_811B394
-sub_811B394: @ 811B394
- push {r4,r5,lr}
- bl sub_811B940
- lsls r0, 16
- lsrs r0, 16
- bl sub_811F578
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- bl sub_811BF88
- adds r5, r0, 0
- cmp r5, 0
- beq _0811B3BC
- movs r0, 0x20
- bl PlaySE
- movs r0, 0
- b _0811B3DC
-_0811B3BC:
- adds r0, r4, 0
- bl sub_811B488
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r0, [r1]
- cmp r0, 0x6
- bne _0811B3D8
- movs r0, 0x9
- strb r0, [r1, 0x4]
- movs r0, 0xD
- b _0811B3DC
- .pool
-_0811B3D8:
- strb r5, [r1, 0x4]
- movs r0, 0xC
-_0811B3DC:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_811B394
-
- thumb_func_start sub_811B3E4
-sub_811B3E4: @ 811B3E4
- push {r4,r5,lr}
- movs r4, 0
- ldr r3, =gUnknown_0203A118
- ldr r0, [r3]
- ldrb r0, [r0, 0x7]
- cmp r4, r0
- bge _0811B40E
- adds r5, r3, 0
-_0811B3F4:
- ldr r3, [r5]
- ldr r1, [r3, 0x38]
- lsls r2, r4, 1
- adds r1, r2, r1
- adds r0, r3, 0
- adds r0, 0x3C
- adds r0, r2
- ldrh r0, [r0]
- strh r0, [r1]
- adds r4, 0x1
- ldrb r3, [r3, 0x7]
- cmp r4, r3
- blt _0811B3F4
-_0811B40E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811B3E4
-
- thumb_func_start sub_811B418
-sub_811B418: @ 811B418
- push {r4,r5,lr}
- movs r3, 0
- ldr r2, =gUnknown_0203A118
- ldr r0, [r2]
- ldrb r0, [r0, 0x7]
- cmp r3, r0
- bge _0811B444
- adds r5, r2, 0
- ldr r0, =0x0000ffff
- adds r4, r0, 0
-_0811B42C:
- ldr r2, [r5]
- lsls r0, r3, 1
- adds r1, r2, 0
- adds r1, 0x3C
- adds r1, r0
- ldrh r0, [r1]
- orrs r0, r4
- strh r0, [r1]
- adds r3, 0x1
- ldrb r2, [r2, 0x7]
- cmp r3, r2
- blt _0811B42C
-_0811B444:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811B418
-
- thumb_func_start sub_811B454
-sub_811B454: @ 811B454
- push {r4,r5,lr}
- movs r4, 0
- ldr r3, =gUnknown_0203A118
- ldr r0, [r3]
- ldrb r0, [r0, 0x7]
- cmp r4, r0
- bge _0811B47E
- adds r5, r3, 0
-_0811B464:
- ldr r3, [r5]
- lsls r1, r4, 1
- adds r2, r3, 0
- adds r2, 0x3C
- adds r2, r1
- ldr r0, [r3, 0x38]
- adds r1, r0
- ldrh r0, [r1]
- strh r0, [r2]
- adds r4, 0x1
- ldrb r3, [r3, 0x7]
- cmp r4, r3
- blt _0811B464
-_0811B47E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811B454
-
- thumb_func_start sub_811B488
-sub_811B488: @ 811B488
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- bl sub_811B8C8
- lsls r0, 16
- ldr r1, =gUnknown_0203A118
- ldr r1, [r1]
- lsrs r0, 15
- adds r1, 0x3C
- adds r1, r0
- strh r4, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811B488
-
- thumb_func_start sub_811B4AC
-sub_811B4AC: @ 811B4AC
- push {r4,r5,lr}
- movs r2, 0
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r1, [r0, 0x7]
- cmp r2, r1
- bcs _0811B4E2
- adds r5, r1, 0
- adds r4, r0, 0
- adds r4, 0x3C
- ldr r3, [r0, 0x38]
-_0811B4C2:
- lsls r0, r2, 1
- adds r1, r4, r0
- adds r0, r3
- ldrh r1, [r1]
- ldrh r0, [r0]
- cmp r1, r0
- beq _0811B4D8
- movs r0, 0x1
- b _0811B4E4
- .pool
-_0811B4D8:
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, r5
- bcc _0811B4C2
-_0811B4E2:
- movs r0, 0
-_0811B4E4:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_811B4AC
-
- thumb_func_start sub_811B4EC
-sub_811B4EC: @ 811B4EC
- push {lr}
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0]
- subs r0, 0x11
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _0811B51C
- bl sub_811BD64
- cmp r0, 0
- bne _0811B50E
- bl sub_811BDB0
- cmp r0, 0
- beq _0811B518
-_0811B50E:
- movs r0, 0
- b _0811B524
- .pool
-_0811B518:
- movs r0, 0x1
- b _0811B524
-_0811B51C:
- bl sub_811B4AC
- lsls r0, 24
- lsrs r0, 24
-_0811B524:
- pop {r1}
- bx r1
- thumb_func_end sub_811B4EC
-
- thumb_func_start sub_811B528
-sub_811B528: @ 811B528
- push {lr}
- adds r2, r0, 0
- ldr r0, =gUnknown_0203A118
- ldr r3, [r0]
- movs r1, 0xA
- ldrsb r1, [r3, r1]
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0811B558
- ldrb r0, [r3, 0x9]
- cmp r0, 0
- bne _0811B550
- adds r0, r2, 0
- bl sub_811B568
- b _0811B55E
- .pool
-_0811B550:
- adds r0, r2, 0
- bl sub_811B634
- b _0811B55E
-_0811B558:
- adds r0, r2, 0
- bl sub_811B6C4
-_0811B55E:
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- thumb_func_end sub_811B528
-
- thumb_func_start sub_811B568
-sub_811B568: @ 811B568
- push {r4,lr}
- cmp r0, 0x1
- beq _0811B5DE
- cmp r0, 0x1
- bcc _0811B5FE
- cmp r0, 0x2
- beq _0811B57C
- cmp r0, 0x3
- beq _0811B5A4
- b _0811B62A
-_0811B57C:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- movs r0, 0xB
- ldrsb r0, [r1, r0]
- ldrb r3, [r1, 0xC]
- cmn r0, r3
- beq _0811B62A
- ldrb r2, [r1, 0xB]
- cmp r0, 0
- beq _0811B59C
- subs r0, r2, 0x1
- strb r0, [r1, 0xB]
-_0811B594:
- movs r0, 0xF
- b _0811B62C
- .pool
-_0811B59C:
- subs r0, r3, 0x1
- strb r0, [r1, 0xC]
- movs r0, 0x11
- b _0811B62C
-_0811B5A4:
- ldr r0, =gUnknown_0203A118
- ldr r2, [r0]
- movs r1, 0xB
- ldrsb r1, [r2, r1]
- ldrb r3, [r2, 0xC]
- adds r1, r3
- ldrb r0, [r2, 0xD]
- subs r0, 0x1
- cmp r1, r0
- bge _0811B62A
- ldrb r1, [r2, 0xB]
- movs r0, 0xB
- ldrsb r0, [r2, r0]
- cmp r0, 0x2
- bgt _0811B5D0
- adds r0, r1, 0x1
- strb r0, [r2, 0xB]
- movs r4, 0xF
- b _0811B5D6
- .pool
-_0811B5D0:
- adds r0, r3, 0x1
- strb r0, [r2, 0xC]
- movs r4, 0x10
-_0811B5D6:
- bl sub_811B978
- adds r0, r4, 0
- b _0811B62C
-_0811B5DE:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r2, [r1, 0xA]
- movs r0, 0xA
- ldrsb r0, [r1, r0]
- cmp r0, 0
- beq _0811B5F8
- subs r0, r2, 0x1
- strb r0, [r1, 0xA]
- b _0811B594
- .pool
-_0811B5F8:
- bl sub_811B744
- b _0811B594
-_0811B5FE:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r2, [r1, 0xA]
- movs r0, 0xA
- ldrsb r0, [r1, r0]
- cmp r0, 0
- bgt _0811B624
- adds r0, r2, 0x1
- strb r0, [r1, 0xA]
- bl sub_811B9C8
- lsls r0, 24
- cmp r0, 0
- beq _0811B594
- bl sub_811B744
- b _0811B594
- .pool
-_0811B624:
- bl sub_811B744
- b _0811B594
-_0811B62A:
- movs r0, 0
-_0811B62C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811B568
-
- thumb_func_start sub_811B634
-sub_811B634: @ 811B634
- push {lr}
- cmp r0, 0x1
- beq _0811B6A0
- cmp r0, 0x1
- bcc _0811B684
- cmp r0, 0x2
- beq _0811B64A
- cmp r0, 0x3
- beq _0811B66A
- movs r0, 0
- b _0811B6BC
-_0811B64A:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r2, [r1, 0xB]
- movs r0, 0xB
- ldrsb r0, [r1, r0]
- cmp r0, 0
- ble _0811B660
- subs r0, r2, 0x1
- b _0811B662
- .pool
-_0811B660:
- movs r0, 0x3
-_0811B662:
- strb r0, [r1, 0xB]
- bl sub_811B978
- b _0811B6BA
-_0811B66A:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r2, [r1, 0xB]
- movs r0, 0xB
- ldrsb r0, [r1, r0]
- cmp r0, 0x2
- bgt _0811B680
- adds r0, r2, 0x1
- b _0811B662
- .pool
-_0811B680:
- movs r0, 0
- b _0811B662
-_0811B684:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r0, [r1, 0xA]
- adds r0, 0x1
- strb r0, [r1, 0xA]
- bl sub_811B9C8
- lsls r0, 24
- cmp r0, 0
- beq _0811B6BA
- b _0811B6B6
- .pool
-_0811B6A0:
- ldr r2, =gUnknown_0203A118
- ldr r1, [r2]
- ldrb r0, [r1, 0xA]
- subs r0, 0x1
- strb r0, [r1, 0xA]
- ldr r0, [r2]
- ldrb r0, [r0, 0xA]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0
- bge _0811B6BA
-_0811B6B6:
- bl sub_811B744
-_0811B6BA:
- movs r0, 0xF
-_0811B6BC:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_811B634
-
- thumb_func_start sub_811B6C4
-sub_811B6C4: @ 811B6C4
- push {lr}
- adds r2, r0, 0
- cmp r2, 0x1
- beq _0811B714
- cmp r2, 0x1
- bcc _0811B728
- cmp r2, 0x2
- beq _0811B6DC
- cmp r2, 0x3
- beq _0811B6F8
- movs r0, 0
- b _0811B73A
-_0811B6DC:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r3, [r1, 0xB]
- movs r0, 0xB
- ldrsb r0, [r1, r0]
- cmp r0, 0
- beq _0811B6F4
- subs r0, r3, 0x1
- b _0811B736
- .pool
-_0811B6F4:
- strb r2, [r1, 0xB]
- b _0811B738
-_0811B6F8:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r2, [r1, 0xB]
- movs r0, 0xB
- ldrsb r0, [r1, r0]
- cmp r0, 0x1
- bgt _0811B710
- adds r0, r2, 0x1
- b _0811B736
- .pool
-_0811B710:
- movs r0, 0
- b _0811B736
-_0811B714:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r0, [r1, 0xB]
- adds r0, 0x1
- strb r0, [r1, 0xB]
- bl sub_811B768
- b _0811B738
- .pool
-_0811B728:
- ldr r2, =gUnknown_0203A118
- ldr r1, [r2]
- movs r0, 0
- strb r0, [r1, 0xA]
- ldr r1, [r2]
- ldrb r0, [r1, 0xB]
- adds r0, 0x1
-_0811B736:
- strb r0, [r1, 0xB]
-_0811B738:
- movs r0, 0xF
-_0811B73A:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_811B6C4
-
- thumb_func_start sub_811B744
-sub_811B744: @ 811B744
- push {lr}
- ldr r2, =gUnknown_0203A118
- ldr r1, [r2]
- movs r0, 0xFF
- strb r0, [r1, 0xA]
- ldr r2, [r2]
- ldrb r1, [r2, 0xB]
- movs r0, 0xB
- ldrsb r0, [r2, r0]
- cmp r0, 0
- beq _0811B75E
- subs r0, r1, 0x1
- strb r0, [r2, 0xB]
-_0811B75E:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811B744
-
- thumb_func_start sub_811B768
-sub_811B768: @ 811B768
- push {r4,lr}
- ldr r4, =gUnknown_0203A118
- ldr r1, [r4]
- ldrb r0, [r1, 0x9]
- cmp r0, 0
- bne _0811B784
- movs r0, 0x1
- strb r0, [r1, 0xA]
- bl sub_811B978
- b _0811B78E
- .pool
-_0811B784:
- ldrb r0, [r1, 0xB]
- bl sub_811B960
- ldr r1, [r4]
- strb r0, [r1, 0xA]
-_0811B78E:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_811B768
-
- thumb_func_start sub_811B794
-sub_811B794: @ 811B794
- push {r4,lr}
- cmp r0, 0x5
- bls _0811B79C
- b _0811B8C0
-_0811B79C:
- lsls r0, 2
- ldr r1, =_0811B7AC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0811B7AC:
- .4byte _0811B848
- .4byte _0811B826
- .4byte _0811B7C4
- .4byte _0811B7F0
- .4byte _0811B870
- .4byte _0811B890
-_0811B7C4:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- movs r0, 0x11
- ldrsb r0, [r1, r0]
- ldrb r3, [r1, 0xE]
- adds r0, r3
- cmp r0, 0
- bgt _0811B7D6
- b _0811B8C0
-_0811B7D6:
- ldrb r2, [r1, 0x11]
- movs r0, 0x11
- ldrsb r0, [r1, r0]
- cmp r0, 0
- ble _0811B7E8
- subs r0, r2, 0x1
- b _0811B80E
- .pool
-_0811B7E8:
- subs r0, r3, 0x1
- strb r0, [r1, 0xE]
- movs r4, 0x13
- b _0811B81E
-_0811B7F0:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- movs r0, 0x11
- ldrsb r0, [r1, r0]
- ldrb r3, [r1, 0xE]
- adds r0, r3
- ldrb r2, [r1, 0xF]
- cmp r0, r2
- bge _0811B8C0
- ldrb r2, [r1, 0x11]
- movs r0, 0x11
- ldrsb r0, [r1, r0]
- cmp r0, 0x2
- bgt _0811B818
- adds r0, r2, 0x1
-_0811B80E:
- strb r0, [r1, 0x11]
- movs r4, 0x12
- b _0811B81E
- .pool
-_0811B818:
- adds r0, r3, 0x1
- strb r0, [r1, 0xE]
- movs r4, 0x14
-_0811B81E:
- bl sub_811B9A0
- adds r0, r4, 0
- b _0811B8C2
-_0811B826:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r2, [r1, 0x10]
- movs r0, 0x10
- ldrsb r0, [r1, r0]
- cmp r0, 0
- ble _0811B83C
- subs r0, r2, 0x1
- b _0811B83E
- .pool
-_0811B83C:
- movs r0, 0x1
-_0811B83E:
- strb r0, [r1, 0x10]
- bl sub_811B9A0
-_0811B844:
- movs r0, 0x12
- b _0811B8C2
-_0811B848:
- ldr r4, =gUnknown_0203A118
- ldr r1, [r4]
- ldrb r2, [r1, 0x10]
- movs r0, 0x10
- ldrsb r0, [r1, r0]
- cmp r0, 0
- bgt _0811B866
- adds r0, r2, 0x1
- strb r0, [r1, 0x10]
- bl sub_811BA1C
- lsls r0, 24
- cmp r0, 0
- beq _0811B844
- ldr r1, [r4]
-_0811B866:
- movs r0, 0
- strb r0, [r1, 0x10]
- b _0811B844
- .pool
-_0811B870:
- ldr r0, =gUnknown_0203A118
- ldr r2, [r0]
- ldrb r0, [r2, 0xE]
- adds r1, r0, 0
- cmp r1, 0
- beq _0811B8C0
- cmp r1, 0x3
- bls _0811B888
- subs r0, 0x4
- b _0811B88A
- .pool
-_0811B888:
- movs r0, 0
-_0811B88A:
- strb r0, [r2, 0xE]
- movs r0, 0x15
- b _0811B8C2
-_0811B890:
- ldr r3, =gUnknown_0203A118
- ldr r1, [r3]
- ldrb r2, [r1, 0xE]
- ldrb r0, [r1, 0xF]
- subs r0, 0x4
- cmp r2, r0
- bgt _0811B8C0
- adds r0, r2, 0x4
- strb r0, [r1, 0xE]
- ldr r2, [r3]
- ldrb r1, [r2, 0xE]
- ldrb r3, [r2, 0xF]
- subs r0, r3, 0x3
- cmp r1, r0
- ble _0811B8B4
- adds r0, r3, 0
- adds r0, 0xFD
- strb r0, [r2, 0xE]
-_0811B8B4:
- bl sub_811B9A0
- movs r0, 0x16
- b _0811B8C2
- .pool
-_0811B8C0:
- movs r0, 0
-_0811B8C2:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811B794
-
- thumb_func_start sub_811B8C8
-sub_811B8C8: @ 811B8C8
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- movs r2, 0x6
- ldrsb r2, [r0, r2]
- ldrb r1, [r0, 0x2]
- muls r1, r2
- ldrb r0, [r0, 0x5]
- lsls r0, 24
- asrs r0, 24
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- bx lr
- .pool
- thumb_func_end sub_811B8C8
-
- thumb_func_start sub_811B8E8
-sub_811B8E8: @ 811B8E8
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- movs r1, 0xB
- ldrsb r1, [r0, r1]
- ldrb r2, [r0, 0xC]
- adds r1, r2
- lsls r1, 1
- ldrb r0, [r0, 0xA]
- lsls r0, 24
- asrs r0, 24
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- bx lr
- .pool
- thumb_func_end sub_811B8E8
-
- thumb_func_start sub_811B908
-sub_811B908: @ 811B908
- push {lr}
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r0, [r1, 0xA]
- movs r3, 0
- cmp r0, 0x6
- bhi _0811B91A
- movs r3, 0xA
- ldrsb r3, [r1, r3]
-_0811B91A:
- ldrb r0, [r1, 0xB]
- movs r2, 0
- cmp r0, 0x3
- bhi _0811B926
- movs r2, 0xB
- ldrsb r2, [r1, r2]
-_0811B926:
- ldr r0, =gUnknown_08597748
- lsls r1, r2, 3
- subs r1, r2
- adds r1, r3, r1
- adds r1, r0
- ldrb r0, [r1]
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_811B908
-
- thumb_func_start sub_811B940
-sub_811B940: @ 811B940
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- movs r1, 0x11
- ldrsb r1, [r0, r1]
- ldrb r2, [r0, 0xE]
- adds r1, r2
- lsls r1, 1
- ldrb r0, [r0, 0x10]
- lsls r0, 24
- asrs r0, 24
- adds r0, r1
- lsls r0, 16
- lsrs r0, 16
- bx lr
- .pool
- thumb_func_end sub_811B940
-
- thumb_func_start sub_811B960
-sub_811B960: @ 811B960
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _0811B96E
- cmp r0, 0x1
- beq _0811B972
-_0811B96E:
- movs r0, 0x6
- b _0811B974
-_0811B972:
- movs r0, 0x5
-_0811B974:
- pop {r1}
- bx r1
- thumb_func_end sub_811B960
-
- thumb_func_start sub_811B978
-sub_811B978: @ 811B978
- push {lr}
- b _0811B98E
-_0811B97C:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r2, [r1, 0xA]
- movs r0, 0xA
- ldrsb r0, [r1, r0]
- cmp r0, 0
- beq _0811B998
- subs r0, r2, 0x1
- strb r0, [r1, 0xA]
-_0811B98E:
- bl sub_811B9C8
- lsls r0, 24
- cmp r0, 0
- bne _0811B97C
-_0811B998:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811B978
-
- thumb_func_start sub_811B9A0
-sub_811B9A0: @ 811B9A0
- push {lr}
- b _0811B9B6
-_0811B9A4:
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r2, [r1, 0x10]
- movs r0, 0x10
- ldrsb r0, [r1, r0]
- cmp r0, 0
- beq _0811B9C0
- subs r0, r2, 0x1
- strb r0, [r1, 0x10]
-_0811B9B6:
- bl sub_811BA1C
- lsls r0, 24
- cmp r0, 0
- bne _0811B9A4
-_0811B9C0:
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811B9A0
-
- thumb_func_start sub_811B9C8
-sub_811B9C8: @ 811B9C8
- push {r4,lr}
- ldr r4, =gUnknown_0203A118
- ldr r1, [r4]
- ldrb r0, [r1, 0x9]
- cmp r0, 0
- bne _0811B9F8
- bl sub_811B8E8
- adds r4, r0, 0
- bl sub_811F3AC
- movs r1, 0
- lsls r0, 24
- lsls r4, 16
- lsrs r4, 16
- lsrs r0, 24
- cmp r4, r0
- bcc _0811B9EE
- movs r1, 0x1
-_0811B9EE:
- adds r0, r1, 0
- b _0811BA14
- .pool
-_0811B9F8:
- ldrb r0, [r1, 0xB]
- bl sub_811B960
- movs r2, 0
- ldr r1, [r4]
- ldrb r1, [r1, 0xA]
- lsls r1, 24
- asrs r1, 24
- lsls r0, 24
- lsrs r0, 24
- cmp r1, r0
- ble _0811BA12
- movs r2, 0x1
-_0811BA12:
- adds r0, r2, 0
-_0811BA14:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811B9C8
-
- thumb_func_start sub_811BA1C
-sub_811BA1C: @ 811BA1C
- push {r4,lr}
- bl sub_811B940
- adds r4, r0, 0
- bl sub_811F5B0
- movs r1, 0
- lsls r4, 16
- lsls r0, 16
- cmp r4, r0
- bcc _0811BA34
- movs r1, 0x1
-_0811BA34:
- adds r0, r1, 0
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811BA1C
-
- thumb_func_start sub_811BA3C
-sub_811BA3C: @ 811BA3C
- ldr r2, =gUnknown_08597550
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r1, [r0, 0x1]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0, 0x3]
- lsrs r0, 7
- bx lr
- .pool
- thumb_func_end sub_811BA3C
-
- thumb_func_start sub_811BA5C
-sub_811BA5C: @ 811BA5C
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0]
- bx lr
- .pool
- thumb_func_end sub_811BA5C
-
- thumb_func_start sub_811BA68
-sub_811BA68: @ 811BA68
- ldr r2, =gUnknown_08597550
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r1, [r0, 0x1]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r0, [r0, 0x3]
- lsls r0, 25
- lsrs r0, 25
- bx lr
- .pool
- thumb_func_end sub_811BA68
-
- thumb_func_start sub_811BA88
-sub_811BA88: @ 811BA88
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldr r0, [r0, 0x34]
- bx lr
- .pool
- thumb_func_end sub_811BA88
-
- thumb_func_start sub_811BA94
-sub_811BA94: @ 811BA94
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- adds r0, 0x3C
- bx lr
- .pool
- thumb_func_end sub_811BA94
-
- thumb_func_start sub_811BAA0
-sub_811BAA0: @ 811BAA0
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0, 0x3]
- bx lr
- .pool
- thumb_func_end sub_811BAA0
-
- thumb_func_start sub_811BAAC
-sub_811BAAC: @ 811BAAC
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0, 0x2]
- bx lr
- .pool
- thumb_func_end sub_811BAAC
-
- thumb_func_start sub_811BAB8
-sub_811BAB8: @ 811BAB8
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0, 0x5]
- bx lr
- .pool
- thumb_func_end sub_811BAB8
-
- thumb_func_start sub_811BAC4
-sub_811BAC4: @ 811BAC4
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0, 0x6]
- bx lr
- .pool
- thumb_func_end sub_811BAC4
-
- thumb_func_start sub_811BAD0
-sub_811BAD0: @ 811BAD0
- push {r4,r5,lr}
- ldr r4, =gUnknown_08597550
- ldr r2, =gUnknown_0203A118
- ldr r5, [r2]
- ldrb r3, [r5, 0x1]
- lsls r2, r3, 1
- adds r2, r3
- lsls r2, 3
- adds r3, r4, 0
- adds r3, 0x8
- adds r2, r3
- ldr r2, [r2]
- str r2, [r0]
- ldrb r2, [r5, 0x1]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r4, 0xC
- adds r0, r4
- ldr r0, [r0]
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811BAD0
-
- thumb_func_start sub_811BB08
-sub_811BB08: @ 811BB08
- push {r4,r5,lr}
- ldr r4, =gUnknown_08597550
- ldr r2, =gUnknown_0203A118
- ldr r5, [r2]
- ldrb r3, [r5, 0x1]
- lsls r2, r3, 1
- adds r2, r3
- lsls r2, 3
- adds r3, r4, 0
- adds r3, 0x10
- adds r2, r3
- ldr r2, [r2]
- str r2, [r0]
- ldrb r2, [r5, 0x1]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r4, 0x14
- adds r0, r4
- ldr r0, [r0]
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811BB08
-
- thumb_func_start sub_811BB40
-sub_811BB40: @ 811BB40
- push {lr}
- adds r2, r0, 0
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0]
- cmp r0, 0x4
- bne _0811BB5C
- ldr r0, =gText_StopGivingPkmnMail
- b _0811BB7A
- .pool
-_0811BB5C:
- cmp r0, 0x4
- blt _0811BB78
- cmp r0, 0x10
- bgt _0811BB78
- cmp r0, 0xF
- blt _0811BB78
- ldr r0, =gText_LikeToQuitQuiz
- str r0, [r2]
- ldr r0, =gText_ChallengeQuestionMark
- b _0811BB7E
- .pool
-_0811BB78:
- ldr r0, =gText_QuitEditing
-_0811BB7A:
- str r0, [r2]
- movs r0, 0
-_0811BB7E:
- str r0, [r1]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811BB40
-
- thumb_func_start sub_811BB88
-sub_811BB88: @ 811BB88
- ldr r2, =gText_AllTextBeingEditedWill
- str r2, [r0]
- ldr r0, =gText_BeDeletedThatOkay
- str r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_811BB88
-
- thumb_func_start sub_811BB9C
-sub_811BB9C: @ 811BB9C
- ldr r2, =gUnknown_0203A118
- ldr r3, [r2]
- ldrb r2, [r3, 0xA]
- strb r2, [r0]
- ldrb r0, [r3, 0xB]
- strb r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_811BB9C
-
- thumb_func_start sub_811BBB0
-sub_811BBB0: @ 811BBB0
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0, 0x9]
- bx lr
- .pool
- thumb_func_end sub_811BBB0
-
- thumb_func_start sub_811BBBC
-sub_811BBBC: @ 811BBBC
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0, 0xC]
- bx lr
- .pool
- thumb_func_end sub_811BBBC
-
- thumb_func_start sub_811BBC8
-sub_811BBC8: @ 811BBC8
- ldr r2, =gUnknown_0203A118
- ldr r3, [r2]
- ldrb r2, [r3, 0x10]
- strb r2, [r0]
- ldrb r0, [r3, 0x11]
- strb r0, [r1]
- bx lr
- .pool
- thumb_func_end sub_811BBC8
-
- thumb_func_start sub_811BBDC
-sub_811BBDC: @ 811BBDC
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0, 0xE]
- bx lr
- .pool
- thumb_func_end sub_811BBDC
-
- thumb_func_start sub_811BBE8
-sub_811BBE8: @ 811BBE8
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0, 0xF]
- bx lr
- .pool
- thumb_func_end sub_811BBE8
-
- thumb_func_start sub_811BBF4
-sub_811BBF4: @ 811BBF4
- movs r0, 0
- bx lr
- thumb_func_end sub_811BBF4
-
- thumb_func_start sub_811BBF8
-sub_811BBF8: @ 811BBF8
- push {lr}
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- ldrb r0, [r1, 0x4]
- cmp r0, 0x2
- beq _0811BC10
- cmp r0, 0x3
- beq _0811BC1A
- b _0811BC24
- .pool
-_0811BC10:
- ldrb r0, [r1, 0x9]
- cmp r0, 0
- bne _0811BC24
- ldrb r0, [r1, 0xC]
- b _0811BC1C
-_0811BC1A:
- ldrb r0, [r1, 0xE]
-_0811BC1C:
- cmp r0, 0
- beq _0811BC24
- movs r0, 0x1
- b _0811BC26
-_0811BC24:
- movs r0, 0
-_0811BC26:
- pop {r1}
- bx r1
- thumb_func_end sub_811BBF8
-
- thumb_func_start sub_811BC2C
-sub_811BC2C: @ 811BC2C
- push {lr}
- ldr r0, =gUnknown_0203A118
- ldr r2, [r0]
- ldrb r0, [r2, 0x4]
- cmp r0, 0x2
- beq _0811BC44
- cmp r0, 0x3
- beq _0811BC5A
- b _0811BC68
- .pool
-_0811BC44:
- ldrb r0, [r2, 0x9]
- cmp r0, 0
- bne _0811BC68
- ldrb r1, [r2, 0xC]
- adds r1, 0x4
- ldrb r0, [r2, 0xD]
- subs r0, 0x1
- cmp r1, r0
- bgt _0811BC68
- movs r0, 0x1
- b _0811BC6A
-_0811BC5A:
- ldrb r0, [r2, 0xE]
- adds r0, 0x4
- ldrb r2, [r2, 0xF]
- cmp r0, r2
- bgt _0811BC68
- movs r0, 0x1
- b _0811BC6A
-_0811BC68:
- movs r0, 0
-_0811BC6A:
- pop {r1}
- bx r1
- thumb_func_end sub_811BC2C
-
- thumb_func_start sub_811BC70
-sub_811BC70: @ 811BC70
- push {lr}
- bl sub_811BA3C
- pop {r1}
- bx r1
- thumb_func_end sub_811BC70
-
- thumb_func_start sub_811BC7C
-sub_811BC7C: @ 811BC7C
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r1, 24
- lsrs r3, r1, 24
- movs r2, 0
- cmp r2, r3
- bcs _0811BCB2
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- adds r4, r0, 0
- adds r4, 0x3C
-_0811BC92:
- lsls r0, r2, 1
- adds r1, r0, r5
- adds r0, r4, r0
- ldrh r1, [r1]
- ldrh r0, [r0]
- cmp r1, r0
- beq _0811BCA8
- movs r0, 0x1
- b _0811BCB4
- .pool
-_0811BCA8:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, r3
- bcc _0811BC92
-_0811BCB2:
- movs r0, 0
-_0811BCB4:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_811BC7C
-
- thumb_func_start sub_811BCBC
-sub_811BCBC: @ 811BCBC
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0, 0x12]
- bx lr
- .pool
- thumb_func_end sub_811BCBC
-
- thumb_func_start sub_811BCC8
-sub_811BCC8: @ 811BCC8
- push {lr}
- lsls r0, 24
- lsrs r3, r0, 24
- movs r1, 0
- ldr r2, =gUnknown_08597550
-_0811BCD2:
- ldrb r0, [r2]
- cmp r0, r3
- bne _0811BCE4
- lsls r0, r1, 24
- lsrs r0, 24
- b _0811BCEE
- .pool
-_0811BCE4:
- adds r2, 0x18
- adds r1, 0x1
- cmp r1, 0x14
- bls _0811BCD2
- movs r0, 0
-_0811BCEE:
- pop {r1}
- bx r1
- thumb_func_end sub_811BCC8
-
- thumb_func_start sub_811BCF4
-sub_811BCF4: @ 811BCF4
- push {r4,lr}
- movs r2, 0
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r1, [r0, 0x7]
- cmp r2, r1
- bge _0811BD24
- ldr r4, =0x0000ffff
- adds r3, r1, 0
- adds r1, r0, 0
- adds r1, 0x3C
-_0811BD0A:
- ldrh r0, [r1]
- cmp r0, r4
- beq _0811BD1C
- movs r0, 0
- b _0811BD26
- .pool
-_0811BD1C:
- adds r1, 0x2
- adds r2, 0x1
- cmp r2, r3
- blt _0811BD0A
-_0811BD24:
- movs r0, 0x1
-_0811BD26:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811BCF4
-
- thumb_func_start sub_811BD2C
-sub_811BD2C: @ 811BD2C
- push {r4,lr}
- movs r2, 0
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r1, [r0, 0x7]
- cmp r2, r1
- bge _0811BD5C
- ldr r4, =0x0000ffff
- adds r3, r1, 0
- adds r1, r0, 0
- adds r1, 0x3C
-_0811BD42:
- ldrh r0, [r1]
- cmp r0, r4
- bne _0811BD54
- movs r0, 0
- b _0811BD5E
- .pool
-_0811BD54:
- adds r1, 0x2
- adds r2, 0x1
- cmp r2, r3
- blt _0811BD42
-_0811BD5C:
- movs r0, 0x1
-_0811BD5E:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811BD2C
-
- thumb_func_start sub_811BD64
-sub_811BD64: @ 811BD64
- push {r4,lr}
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0]
- cmp r0, 0x11
- bne _0811BD80
- bl sub_811BCF4
- b _0811BD9C
- .pool
-_0811BD7C:
- movs r0, 0
- b _0811BD9C
-_0811BD80:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r2, 0
- ldr r3, =0x0000ffff
- ldr r4, =0x00003b5a
- adds r1, r0, r4
-_0811BD8C:
- ldrh r0, [r1]
- cmp r0, r3
- bne _0811BD7C
- adds r1, 0x2
- adds r2, 0x1
- cmp r2, 0x8
- ble _0811BD8C
- movs r0, 0x1
-_0811BD9C:
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_811BD64
-
- thumb_func_start sub_811BDB0
-sub_811BDB0: @ 811BDB0
- push {lr}
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- ldrb r0, [r0]
- cmp r0, 0x12
- bne _0811BDC8
- bl sub_811BCF4
- b _0811BDDE
- .pool
-_0811BDC8:
- ldr r0, =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, =0x00003b58
- adds r0, r1
- movs r2, 0
- ldrh r1, [r0, 0x14]
- ldr r0, =0x0000ffff
- cmp r1, r0
- bne _0811BDDC
- movs r2, 0x1
-_0811BDDC:
- adds r0, r2, 0
-_0811BDDE:
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_811BDB0
-
- thumb_func_start sub_811BDF0
-sub_811BDF0: @ 811BDF0
- push {r4-r6,lr}
- sub sp, 0x20
- adds r6, r0, 0
- ldr r0, =gSaveBlock1Ptr
- ldr r4, [r0]
- bl DynamicPlaceholderTextUtil_Reset
- ldr r0, =0x00003b70
- adds r5, r4, r0
- adds r0, r5, 0
- bl StringLength
- lsls r0, 16
- cmp r0, 0
- beq _0811BE34
- ldr r1, =0x00003b85
- adds r0, r4, r1
- ldrb r2, [r0]
- mov r0, sp
- adds r1, r5, 0
- bl TVShowConvertInternationalString
- movs r0, 0
- mov r1, sp
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
- b _0811BE3C
- .pool
-_0811BE34:
- ldr r1, =gText_Lady
- movs r0, 0
- bl DynamicPlaceholderTextUtil_SetPlaceholderPtr
-_0811BE3C:
- ldr r1, =gText_F700sQuiz
- adds r0, r6, 0
- bl DynamicPlaceholderTextUtil_ExpandPlaceholders
- add sp, 0x20
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811BDF0
-
- thumb_func_start sub_811BE54
-sub_811BE54: @ 811BE54
- push {r4,r5,lr}
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
- adds r4, r0, 0
- adds r4, 0x3C
- ldr r2, =gStringVar2
- movs r5, 0
- b _0811BE86
- .pool
-_0811BE6C:
- ldrh r1, [r4]
- adds r0, r2, 0
- movs r2, 0
- bl CopyEasyChatWordPadded
- adds r2, r0, 0
- movs r0, 0
- strb r0, [r2]
- adds r2, 0x1
- adds r4, 0x2
- adds r5, 0x1
- ldr r0, =gUnknown_0203A118
- ldr r0, [r0]
-_0811BE86:
- ldrb r0, [r0, 0x7]
- cmp r5, r0
- blt _0811BE6C
- subs r2, 0x1
- movs r0, 0xFF
- strb r0, [r2]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811BE54
-
- thumb_func_start sub_811BE9C
-sub_811BE9C: @ 811BE9C
- push {r4,r5,lr}
- ldr r5, =gUnknown_0203A118
- ldr r0, [r5]
- ldrb r0, [r0]
- cmp r0, 0x9
- beq _0811BEF0
- cmp r0, 0x9
- bgt _0811BEB8
- cmp r0, 0
- beq _0811BEC2
- b _0811BF14
- .pool
-_0811BEB8:
- cmp r0, 0xD
- beq _0811BF0C
- cmp r0, 0x14
- beq _0811BED0
- b _0811BF14
-_0811BEC2:
- ldr r0, =0x00000865
- bl FlagSet
- b _0811BF14
- .pool
-_0811BED0:
- bl sub_811BF20
- adds r1, r0, 0
- cmp r1, 0
- beq _0811BEE4
- ldr r1, =gSpecialVar_0x8004
- movs r0, 0x2
- b _0811BF12
- .pool
-_0811BEE4:
- ldr r0, =gSpecialVar_0x8004
- strh r1, [r0]
- b _0811BF14
- .pool
-_0811BEF0:
- bl sub_811BE54
- ldr r4, =gSpecialVar_0x8004
- ldr r0, [r5]
- adds r0, 0x3C
- bl sub_81226D8
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
- b _0811BF14
- .pool
-_0811BF0C:
- bl sub_811BF40
- ldr r1, =gSpecialVar_0x8004
-_0811BF12:
- strh r0, [r1]
-_0811BF14:
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811BE9C
-
- thumb_func_start sub_811BF20
-sub_811BF20: @ 811BF20
- push {lr}
- ldr r0, =gUnknown_08597764
- movs r1, 0x4
- bl sub_811BC7C
- movs r1, 0
- lsls r0, 24
- cmp r0, 0
- bne _0811BF34
- movs r1, 0x1
-_0811BF34:
- adds r0, r1, 0
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_811BF20
-
- thumb_func_start sub_811BF40
-sub_811BF40: @ 811BF40
- push {r4,r5,lr}
- movs r4, 0
- movs r5, 0x80
- lsls r5, 9
-_0811BF48:
- lsls r0, r4, 2
- ldr r1, =gUnknown_0859776C
- adds r0, r1
- movs r1, 0x2
- bl sub_811BC7C
- lsls r0, 24
- cmp r0, 0
- bne _0811BF64
- lsrs r0, r5, 16
- b _0811BF72
- .pool
-_0811BF64:
- movs r0, 0x80
- lsls r0, 9
- adds r5, r0
- adds r4, 0x1
- cmp r4, 0x4
- ble _0811BF48
- movs r0, 0
-_0811BF72:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_811BF40
-
- thumb_func_start sub_811BF78
-sub_811BF78: @ 811BF78
- ldr r0, =gUnknown_0203A118
- ldr r1, [r0]
- movs r0, 0
- strb r0, [r1, 0x13]
- bx lr
- .pool
- thumb_func_end sub_811BF78
-
- thumb_func_start sub_811BF88
-sub_811BF88: @ 811BF88
- movs r0, 0
- bx lr
- thumb_func_end sub_811BF88
-
- thumb_func_start sub_811BF8C
-sub_811BF8C: @ 811BF8C
- push {lr}
- bl sub_811CE94
- lsls r0, 24
- cmp r0, 0
- beq _0811BF9C
- movs r0, 0x1
- b _0811BF9E
-_0811BF9C:
- movs r0, 0
-_0811BF9E:
- pop {r1}
- bx r1
- thumb_func_end sub_811BF8C
-
- thumb_func_start sub_811BFA4
-sub_811BFA4: @ 811BFA4
- push {r4,lr}
- sub sp, 0x8
- ldr r0, =gUnknown_0203A11C
- ldr r0, [r0]
- ldrh r0, [r0]
- cmp r0, 0x5
- bls _0811BFB4
- b _0811C120
-_0811BFB4:
- lsls r0, 2
- ldr r1, =_0811BFC8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0811BFC8:
- .4byte _0811BFE0
- .4byte _0811C044
- .4byte _0811C090
- .4byte _0811C0AC
- .4byte _0811C0BE
- .4byte _0811C0D4
-_0811BFE0:
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, =gUnknown_08597C54
- movs r0, 0
- movs r2, 0x4
- bl InitBgsFromTemplates
- ldr r4, =gUnknown_0203A11C
- ldr r1, [r4]
- movs r0, 0xB0
- lsls r0, 4
- adds r1, r0
- movs r0, 0x3
- bl SetBgTilemapBuffer
- ldr r1, [r4]
- movs r0, 0xC0
- lsls r0, 2
- adds r1, r0
- movs r0, 0x1
- bl SetBgTilemapBuffer
- ldr r0, =gUnknown_08597C64
- bl InitWindows
- bl DeactivateAllTextPrinters
- bl sub_811CF64
- bl sub_811CF04
- movs r0, 0
- str r0, [sp, 0x4]
- movs r1, 0xE0
- lsls r1, 19
- ldr r2, =0x01000100
- add r0, sp, 0x4
- bl CpuFastSet
- b _0811C124
- .pool
-_0811C044:
- ldr r1, =gEasyChatWindow_Gfx
- movs r0, 0
- str r0, [sp]
- movs r0, 0x3
- movs r2, 0
- movs r3, 0
- bl DecompressAndLoadBgGfxUsingHeap
- ldr r1, =gEasyChatWindow_Tilemap
- movs r0, 0x3
- movs r2, 0
- movs r3, 0
- bl CopyToBgTilemapBuffer
- bl sub_811D60C
- ldr r0, =gUnknown_0203A11C
- ldr r0, [r0]
- movs r1, 0xC0
- lsls r1, 2
- adds r0, r1
- bl sub_811D424
- bl sub_811D230
- bl sub_811E948
- movs r0, 0x3
- bl CopyBgTilemapBufferToVram
- b _0811C124
- .pool
-_0811C090:
- ldr r1, =gUnknown_08597B54
- movs r0, 0
- str r0, [sp]
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl DecompressAndLoadBgGfxUsingHeap
- movs r0, 0x1
- bl CopyBgTilemapBufferToVram
- b _0811C124
- .pool
-_0811C0AC:
- bl sub_811CFCC
- bl sub_811D0BC
- bl sub_811D2C8
- bl sub_811D684
- b _0811C124
-_0811C0BE:
- bl sub_811DE90
- bl sub_811BA5C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x10
- beq _0811C124
- bl sub_811DEC4
- b _0811C124
-_0811C0D4:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811C12E
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl sub_811DE5C
- movs r0, 0x48
- movs r1, 0x3F
- bl SetGpuReg
- movs r0, 0x4A
- movs r1, 0x3B
- bl SetGpuReg
- movs r0, 0x3
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0
- bl ShowBg
- bl sub_811E5D4
- bl sub_811E720
- bl sub_811E828
- b _0811C124
-_0811C120:
- movs r0, 0
- b _0811C130
-_0811C124:
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811C12E:
- movs r0, 0x1
-_0811C130:
- add sp, 0x8
- pop {r4}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_811BFA4
-
- thumb_func_start sub_811C13C
-sub_811C13C: @ 811C13C
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- cmp r0, 0
- beq _0811C14E
- bl Free
- movs r0, 0
- str r0, [r4]
-_0811C14E:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811C13C
-
- thumb_func_start sub_811C158
-sub_811C158: @ 811C158
- push {lr}
- ldr r1, =gUnknown_0203A11C
- ldr r1, [r1]
- movs r2, 0
- strh r0, [r1, 0x4]
- strh r2, [r1]
- bl sub_811C170
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811C158
-
- thumb_func_start sub_811C170
-sub_811C170: @ 811C170
- push {lr}
- ldr r0, =gUnknown_0203A11C
- ldr r0, [r0]
- ldrh r0, [r0, 0x4]
- cmp r0, 0x22
- bls _0811C17E
- b _0811C2CE
-_0811C17E:
- lsls r0, 2
- ldr r1, =_0811C190
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0811C190:
- .4byte _0811C2CE
- .4byte _0811C21C
- .4byte _0811C222
- .4byte _0811C228
- .4byte _0811C22E
- .4byte _0811C234
- .4byte _0811C23A
- .4byte _0811C240
- .4byte _0811C246
- .4byte _0811C24C
- .4byte _0811C252
- .4byte _0811C258
- .4byte _0811C25E
- .4byte _0811C264
- .4byte _0811C26A
- .4byte _0811C270
- .4byte _0811C276
- .4byte _0811C27C
- .4byte _0811C282
- .4byte _0811C288
- .4byte _0811C28E
- .4byte _0811C294
- .4byte _0811C29A
- .4byte _0811C2A0
- .4byte _0811C2CE
- .4byte _0811C2CE
- .4byte _0811C2CE
- .4byte _0811C2CE
- .4byte _0811C2CE
- .4byte _0811C2A6
- .4byte _0811C2AC
- .4byte _0811C2B2
- .4byte _0811C2B8
- .4byte _0811C2BE
- .4byte _0811C2C4
-_0811C21C:
- bl sub_811C2D4
- b _0811C2C8
-_0811C222:
- bl sub_811C30C
- b _0811C2C8
-_0811C228:
- bl sub_811C3E4
- b _0811C2C8
-_0811C22E:
- bl sub_811C48C
- b _0811C2C8
-_0811C234:
- bl sub_811C404
- b _0811C2C8
-_0811C23A:
- bl sub_811C448
- b _0811C2C8
-_0811C240:
- bl sub_811C4D0
- b _0811C2C8
-_0811C246:
- bl sub_811C518
- b _0811C2C8
-_0811C24C:
- bl sub_811C554
- b _0811C2C8
-_0811C252:
- bl sub_811C620
- b _0811C2C8
-_0811C258:
- bl sub_811C830
- b _0811C2C8
-_0811C25E:
- bl sub_811C8F0
- b _0811C2C8
-_0811C264:
- bl sub_811C99C
- b _0811C2C8
-_0811C26A:
- bl sub_811CA5C
- b _0811C2C8
-_0811C270:
- bl sub_811C780
- b _0811C2C8
-_0811C276:
- bl sub_811C78C
- b _0811C2C8
-_0811C27C:
- bl sub_811C7D4
- b _0811C2C8
-_0811C282:
- bl sub_811CB18
- b _0811C2C8
-_0811C288:
- bl sub_811CB98
- b _0811C2C8
-_0811C28E:
- bl sub_811CB24
- b _0811C2C8
-_0811C294:
- bl sub_811CC90
- b _0811C2C8
-_0811C29A:
- bl sub_811CC08
- b _0811C2C8
-_0811C2A0:
- bl sub_811C6C0
- b _0811C2C8
-_0811C2A6:
- bl sub_811CD14
- b _0811C2C8
-_0811C2AC:
- bl sub_811CD54
- b _0811C2C8
-_0811C2B2:
- bl sub_811CD94
- b _0811C2C8
-_0811C2B8:
- bl sub_811CDD4
- b _0811C2C8
-_0811C2BE:
- bl sub_811CE14
- b _0811C2C8
-_0811C2C4:
- bl sub_811CE54
-_0811C2C8:
- lsls r0, 24
- lsrs r0, 24
- b _0811C2D0
-_0811C2CE:
- movs r0, 0
-_0811C2D0:
- pop {r1}
- bx r1
- thumb_func_end sub_811C170
-
- thumb_func_start sub_811C2D4
-sub_811C2D4: @ 811C2D4
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811C2EC
- cmp r0, 0x1
- beq _0811C2FA
- b _0811C304
- .pool
-_0811C2EC:
- bl sub_811D2C8
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811C304
-_0811C2FA:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
- b _0811C306
-_0811C304:
- movs r0, 0x1
-_0811C306:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811C2D4
-
- thumb_func_start sub_811C30C
-sub_811C30C: @ 811C30C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x40
- bl sub_811BA94
- adds r4, r0, 0
- bl sub_811BA68
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- bl sub_811BAB8
- lsls r0, 24
- lsrs r7, r0, 24
- bl sub_811BAC4
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- bl sub_811BAAC
- lsls r0, 24
- lsrs r0, 24
- mov r1, r9
- muls r1, r0
- adds r0, r1, 0
- lsls r0, 1
- adds r4, r0
- ldr r1, =gUnknown_08597C30
- mov r2, r10
- lsls r0, r2, 2
- adds r0, r1
- ldrb r0, [r0]
- lsls r0, 27
- lsrs r0, 8
- movs r1, 0xD0
- lsls r1, 12
- adds r0, r1
- lsrs r6, r0, 16
- movs r5, 0
- cmp r5, r7
- bcs _0811C3AA
- ldr r2, =0x0000ffff
- mov r8, r2
-_0811C36C:
- ldrh r0, [r4]
- cmp r0, r8
- bne _0811C380
- movs r0, 0x48
- b _0811C392
- .pool
-_0811C380:
- ldrh r1, [r4]
- mov r0, sp
- bl CopyEasyChatWord
- movs r0, 0x1
- mov r1, sp
- movs r2, 0
- bl GetStringWidth
-_0811C392:
- adds r0, 0x11
- lsls r1, r6, 16
- asrs r1, 16
- adds r1, r0
- lsls r1, 16
- lsrs r6, r1, 16
- adds r4, 0x2
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, r7
- bcc _0811C36C
-_0811C3AA:
- ldr r1, =gUnknown_08597C30
- mov r2, r10
- lsls r0, r2, 2
- adds r0, r1
- ldrb r1, [r0]
- lsrs r1, 5
- mov r2, r9
- lsls r0, r2, 1
- adds r1, r0
- lsls r1, 27
- lsls r0, r6, 24
- lsrs r0, 24
- movs r2, 0x80
- lsls r2, 20
- adds r1, r2
- lsrs r1, 24
- bl sub_811DF60
- movs r0, 0
- add sp, 0x40
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .pool
- thumb_func_end sub_811C30C
-
- thumb_func_start sub_811C3E4
-sub_811C3E4: @ 811C3E4
- push {lr}
- bl sub_811BAB8
- lsls r0, 24
- lsrs r0, 24
- bl sub_811E920
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x60
- bl sub_811DF60
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sub_811C3E4
-
- thumb_func_start sub_811C404
-sub_811C404: @ 811C404
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811C41C
- cmp r0, 0x1
- beq _0811C436
- b _0811C440
- .pool
-_0811C41C:
- bl sub_811DF90
- movs r0, 0x2
- bl sub_811D104
- movs r0, 0x1
- bl sub_811D214
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811C440
-_0811C436:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
- b _0811C442
-_0811C440:
- movs r0, 0x1
-_0811C442:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811C404
-
- thumb_func_start sub_811C448
-sub_811C448: @ 811C448
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811C460
- cmp r0, 0x1
- beq _0811C47A
- b _0811C484
- .pool
-_0811C460:
- bl sub_811DF90
- movs r0, 0x3
- bl sub_811D104
- movs r0, 0
- bl sub_811D214
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811C484
-_0811C47A:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
- b _0811C486
-_0811C484:
- movs r0, 0x1
-_0811C486:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811C448
-
- thumb_func_start sub_811C48C
-sub_811C48C: @ 811C48C
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811C4A4
- cmp r0, 0x1
- beq _0811C4BE
- b _0811C4C8
- .pool
-_0811C4A4:
- bl sub_811DF90
- movs r0, 0x1
- bl sub_811D104
- movs r0, 0x1
- bl sub_811D214
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811C4C8
-_0811C4BE:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
- b _0811C4CA
-_0811C4C8:
- movs r0, 0x1
-_0811C4CA:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811C48C
-
- thumb_func_start sub_811C4D0
-sub_811C4D0: @ 811C4D0
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811C4E8
- cmp r0, 0x1
- beq _0811C506
- b _0811C510
- .pool
-_0811C4E8:
- bl sub_811DFB0
- movs r0, 0
- bl sub_811D104
- bl sub_811D2C8
- movs r0, 0
- bl ShowBg
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811C510
-_0811C506:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
- b _0811C512
-_0811C510:
- movs r0, 0x1
-_0811C512:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811C4D0
-
- thumb_func_start sub_811C518
-sub_811C518: @ 811C518
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811C530
- cmp r0, 0x1
- beq _0811C546
- movs r0, 0x1
- b _0811C54E
- .pool
-_0811C530:
- bl sub_811DFB0
- movs r0, 0
- bl sub_811D104
- bl sub_811D2C8
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811C546:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
-_0811C54E:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811C518
-
- thumb_func_start sub_811C554
-sub_811C554: @ 811C554
- push {lr}
- ldr r0, =gUnknown_0203A11C
- ldr r0, [r0]
- ldrh r0, [r0]
- cmp r0, 0x4
- bhi _0811C60E
- lsls r0, 2
- ldr r1, =_0811C574
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0811C574:
- .4byte _0811C588
- .4byte _0811C5A4
- .4byte _0811C5B6
- .4byte _0811C5CC
- .4byte _0811C5EC
-_0811C588:
- bl sub_811DF90
- movs r0, 0
- bl HideBg
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl sub_811DE5C
- bl sub_811D6D4
- b _0811C5DA
-_0811C5A4:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811C618
- movs r0, 0
- bl sub_811D9CC
- b _0811C5DA
-_0811C5B6:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811C618
- bl sub_811DAA4
- lsls r0, 24
- cmp r0, 0
- bne _0811C618
- b _0811C5DA
-_0811C5CC:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811C618
- bl sub_811E3AC
-_0811C5DA:
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811C618
- .pool
-_0811C5EC:
- bl sub_811E418
- lsls r0, 24
- cmp r0, 0
- bne _0811C618
- bl sub_811DFC8
- movs r0, 0
- bl sub_811E6E0
- bl sub_811E64C
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811C60E:
- movs r0, 0
- b _0811C61A
- .pool
-_0811C618:
- movs r0, 0x1
-_0811C61A:
- pop {r1}
- bx r1
- thumb_func_end sub_811C554
-
- thumb_func_start sub_811C620
-sub_811C620: @ 811C620
- push {lr}
- ldr r0, =gUnknown_0203A11C
- ldr r0, [r0]
- ldrh r0, [r0]
- cmp r0, 0x4
- bhi _0811C6B8
- lsls r0, 2
- ldr r1, =_0811C640
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0811C640:
- .4byte _0811C654
- .4byte _0811C662
- .4byte _0811C67E
- .4byte _0811C690
- .4byte _0811C6B4
-_0811C654:
- bl sub_811E050
- bl sub_811E4AC
- bl sub_811E6B0
- b _0811C6A4
-_0811C662:
- bl sub_811E4D0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0811C6B8
- movs r0, 0x1
- bl sub_811D9CC
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811C67E:
- bl sub_811DAA4
- lsls r0, 24
- cmp r0, 0
- bne _0811C6B8
- b _0811C6A4
- .pool
-_0811C690:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811C6B8
- bl sub_811DFB0
- movs r0, 0
- bl ShowBg
-_0811C6A4:
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811C6B8
- .pool
-_0811C6B4:
- movs r0, 0
- b _0811C6BA
-_0811C6B8:
- movs r0, 0x1
-_0811C6BA:
- pop {r1}
- bx r1
- thumb_func_end sub_811C620
-
- thumb_func_start sub_811C6C0
-sub_811C6C0: @ 811C6C0
- push {lr}
- ldr r0, =gUnknown_0203A11C
- ldr r0, [r0]
- ldrh r0, [r0]
- cmp r0, 0x4
- bhi _0811C778
- lsls r0, 2
- ldr r1, =_0811C6E0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0811C6E0:
- .4byte _0811C6F4
- .4byte _0811C708
- .4byte _0811C722
- .4byte _0811C748
- .4byte _0811C76E
-_0811C6F4:
- bl sub_811E050
- bl sub_811E6B0
- bl sub_811E55C
- movs r0, 0x5
- bl sub_811D9CC
- b _0811C736
-_0811C708:
- bl sub_811DAA4
- lsls r0, 24
- cmp r0, 0
- bne _0811C778
- bl sub_811E5B8
- lsls r0, 24
- cmp r0, 0
- bne _0811C778
- bl sub_811D6D4
- b _0811C736
-_0811C722:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811C778
- movs r0, 0x6
- bl sub_811D9CC
- bl sub_811E578
-_0811C736:
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811C778
- .pool
-_0811C748:
- bl sub_811DAA4
- lsls r0, 24
- cmp r0, 0
- bne _0811C778
- bl sub_811E5B8
- lsls r0, 24
- cmp r0, 0
- bne _0811C778
- bl sub_811E64C
- bl sub_811DFC8
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811C76E:
- movs r0, 0
- b _0811C77A
- .pool
-_0811C778:
- movs r0, 0x1
-_0811C77A:
- pop {r1}
- bx r1
- thumb_func_end sub_811C6C0
-
- thumb_func_start sub_811C780
-sub_811C780: @ 811C780
- push {lr}
- bl sub_811E088
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sub_811C780
-
- thumb_func_start sub_811C78C
-sub_811C78C: @ 811C78C
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811C7A4
- cmp r0, 0x1
- beq _0811C7B4
- b _0811C7CA
- .pool
-_0811C7A4:
- movs r0, 0x1
- movs r1, 0x4
- bl sub_811DDAC
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811C7B4:
- bl sub_811DE10
- lsls r0, 24
- cmp r0, 0
- bne _0811C7CA
- bl sub_811E088
- bl sub_811E64C
- movs r0, 0
- b _0811C7CC
-_0811C7CA:
- movs r0, 0x1
-_0811C7CC:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811C78C
-
- thumb_func_start sub_811C7D4
-sub_811C7D4: @ 811C7D4
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0x1
- beq _0811C808
- cmp r0, 0x1
- bgt _0811C7F0
- cmp r0, 0
- beq _0811C7F6
- b _0811C828
- .pool
-_0811C7F0:
- cmp r0, 0x2
- beq _0811C820
- b _0811C828
-_0811C7F6:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x4
- bl sub_811DDAC
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811C808:
- bl sub_811DE10
- lsls r0, 24
- cmp r0, 0
- bne _0811C828
- bl sub_811E64C
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811C820:
- movs r0, 0
- b _0811C82A
- .pool
-_0811C828:
- movs r0, 0x1
-_0811C82A:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811C7D4
-
- thumb_func_start sub_811C830
-sub_811C830: @ 811C830
- push {lr}
- ldr r0, =gUnknown_0203A11C
- ldr r0, [r0]
- ldrh r0, [r0]
- cmp r0, 0x5
- bhi _0811C8E8
- lsls r0, 2
- ldr r1, =_0811C850
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0811C850:
- .4byte _0811C868
- .4byte _0811C876
- .4byte _0811C886
- .4byte _0811C898
- .4byte _0811C8B8
- .4byte _0811C8DE
-_0811C868:
- bl sub_811E050
- bl sub_811E4AC
- bl sub_811E6B0
- b _0811C8A8
-_0811C876:
- bl sub_811E4D0
- lsls r0, 24
- cmp r0, 0
- bne _0811C8E8
- bl sub_811D9B4
- b _0811C8A8
-_0811C886:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811C8E8
- movs r0, 0x2
- bl sub_811D9CC
- b _0811C8A8
-_0811C898:
- bl sub_811DAA4
- lsls r0, 24
- cmp r0, 0
- bne _0811C8E8
- movs r0, 0x2
- bl sub_811D698
-_0811C8A8:
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811C8E8
- .pool
-_0811C8B8:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811C8E8
- bl sub_811E288
- movs r0, 0x1
- bl sub_811E6E0
- bl sub_811E64C
- bl sub_811E794
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811C8DE:
- movs r0, 0
- b _0811C8EA
- .pool
-_0811C8E8:
- movs r0, 0x1
-_0811C8EA:
- pop {r1}
- bx r1
- thumb_func_end sub_811C830
-
- thumb_func_start sub_811C8F0
-sub_811C8F0: @ 811C8F0
- push {lr}
- ldr r0, =gUnknown_0203A11C
- ldr r0, [r0]
- ldrh r0, [r0]
- cmp r0, 0x5
- bhi _0811C994
- lsls r0, 2
- ldr r1, =_0811C910
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0811C910:
- .4byte _0811C928
- .4byte _0811C92E
- .4byte _0811C940
- .4byte _0811C952
- .4byte _0811C974
- .4byte _0811C98C
-_0811C928:
- bl sub_811D2C8
- b _0811C962
-_0811C92E:
- bl sub_811E380
- bl sub_811E6B0
- bl sub_811E7F8
- bl sub_811D9B4
- b _0811C962
-_0811C940:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811C994
- movs r0, 0x3
- bl sub_811D9CC
- b _0811C962
-_0811C952:
- bl sub_811DAA4
- lsls r0, 24
- cmp r0, 0
- bne _0811C994
- movs r0, 0
- bl ShowBg
-_0811C962:
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811C994
- .pool
-_0811C974:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811C994
- bl sub_811DFB0
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811C98C:
- movs r0, 0
- b _0811C996
- .pool
-_0811C994:
- movs r0, 0x1
-_0811C996:
- pop {r1}
- bx r1
- thumb_func_end sub_811C8F0
-
- thumb_func_start sub_811C99C
-sub_811C99C: @ 811C99C
- push {lr}
- ldr r0, =gUnknown_0203A11C
- ldr r0, [r0]
- ldrh r0, [r0]
- cmp r0, 0x6
- bhi _0811CA54
- lsls r0, 2
- ldr r1, =_0811C9BC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0811C9BC:
- .4byte _0811C9D8
- .4byte _0811C9DE
- .4byte _0811C9F0
- .4byte _0811CA02
- .4byte _0811CA14
- .4byte _0811CA34
- .4byte _0811CA4C
-_0811C9D8:
- bl sub_811D2C8
- b _0811CA24
-_0811C9DE:
- bl sub_811E380
- bl sub_811E6B0
- bl sub_811E7F8
- bl sub_811D9B4
- b _0811CA24
-_0811C9F0:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811CA54
- movs r0, 0x3
- bl sub_811D9CC
- b _0811CA24
-_0811CA02:
- bl sub_811DAA4
- lsls r0, 24
- cmp r0, 0
- bne _0811CA54
- movs r0, 0x3
- bl sub_811D104
- b _0811CA24
-_0811CA14:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811CA54
- movs r0, 0
- bl ShowBg
-_0811CA24:
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811CA54
- .pool
-_0811CA34:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811CA54
- bl sub_811DFB0
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811CA4C:
- movs r0, 0
- b _0811CA56
- .pool
-_0811CA54:
- movs r0, 0x1
-_0811CA56:
- pop {r1}
- bx r1
- thumb_func_end sub_811C99C
-
- thumb_func_start sub_811CA5C
-sub_811CA5C: @ 811CA5C
- push {lr}
- ldr r0, =gUnknown_0203A11C
- ldr r0, [r0]
- ldrh r0, [r0]
- cmp r0, 0x4
- bhi _0811CB10
- lsls r0, 2
- ldr r1, =_0811CA7C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0811CA7C:
- .4byte _0811CA90
- .4byte _0811CAA2
- .4byte _0811CAB4
- .4byte _0811CAC4
- .4byte _0811CAE4
-_0811CA90:
- bl sub_811E380
- bl sub_811E6B0
- bl sub_811E7F8
- bl sub_811D9B4
- b _0811CAD2
-_0811CAA2:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811CB10
- movs r0, 0x4
- bl sub_811D9CC
- b _0811CAD2
-_0811CAB4:
- bl sub_811DAA4
- lsls r0, 24
- cmp r0, 0
- bne _0811CB10
- bl sub_811D6D4
- b _0811CAD2
-_0811CAC4:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811CB10
- bl sub_811E3AC
-_0811CAD2:
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811CB10
- .pool
-_0811CAE4:
- bl sub_811E418
- lsls r0, 24
- cmp r0, 0
- bne _0811CB10
- bl sub_811DFC8
- movs r0, 0
- bl sub_811E6E0
- bl sub_811E64C
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- movs r0, 0
- b _0811CB12
- .pool
-_0811CB10:
- movs r0, 0x1
-_0811CB12:
- pop {r1}
- bx r1
- thumb_func_end sub_811CA5C
-
- thumb_func_start sub_811CB18
-sub_811CB18: @ 811CB18
- push {lr}
- bl sub_811E30C
- movs r0, 0
- pop {r1}
- bx r1
- thumb_func_end sub_811CB18
-
- thumb_func_start sub_811CB24
-sub_811CB24: @ 811CB24
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0x1
- beq _0811CB50
- cmp r0, 0x1
- bgt _0811CB40
- cmp r0, 0
- beq _0811CB4A
- b _0811CB8E
- .pool
-_0811CB40:
- cmp r0, 0x2
- beq _0811CB6C
- cmp r0, 0x3
- beq _0811CB8A
- b _0811CB8E
-_0811CB4A:
- bl sub_811D7A4
- b _0811CB62
-_0811CB50:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811CB8E
- movs r0, 0x1
- movs r1, 0x4
- bl sub_811DDAC
-_0811CB62:
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811CB8E
-_0811CB6C:
- bl sub_811DE10
- lsls r0, 24
- cmp r0, 0
- bne _0811CB8E
- bl sub_811E30C
- bl sub_811E64C
- bl sub_811E794
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811CB8A:
- movs r0, 0
- b _0811CB90
-_0811CB8E:
- movs r0, 0x1
-_0811CB90:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811CB24
-
- thumb_func_start sub_811CB98
-sub_811CB98: @ 811CB98
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0x1
- beq _0811CBC4
- cmp r0, 0x1
- bgt _0811CBB4
- cmp r0, 0
- beq _0811CBBE
- b _0811CC00
- .pool
-_0811CBB4:
- cmp r0, 0x2
- beq _0811CBE2
- cmp r0, 0x3
- beq _0811CBFC
- b _0811CC00
-_0811CBBE:
- bl sub_811D7C8
- b _0811CBD8
-_0811CBC4:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811CC00
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x4
- bl sub_811DDAC
-_0811CBD8:
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811CC00
-_0811CBE2:
- bl sub_811DE10
- lsls r0, 24
- cmp r0, 0
- bne _0811CC00
- bl sub_811E64C
- bl sub_811E794
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811CBFC:
- movs r0, 0
- b _0811CC02
-_0811CC00:
- movs r0, 0x1
-_0811CC02:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811CB98
-
- thumb_func_start sub_811CC08
-sub_811CC08: @ 811CC08
- push {r4,r5,lr}
- ldr r5, =gUnknown_0203A11C
- ldr r0, [r5]
- ldrh r0, [r0]
- cmp r0, 0x1
- beq _0811CC34
- cmp r0, 0x1
- bgt _0811CC24
- cmp r0, 0
- beq _0811CC2E
- b _0811CC86
- .pool
-_0811CC24:
- cmp r0, 0x2
- beq _0811CC64
- cmp r0, 0x3
- beq _0811CC82
- b _0811CC86
-_0811CC2E:
- bl sub_811D7EC
- b _0811CC5A
-_0811CC34:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811CC86
- bl sub_811BBDC
- adds r4, r0, 0
- bl sub_811DE48
- lsls r4, 24
- lsrs r4, 24
- subs r4, r0
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- movs r1, 0x8
- bl sub_811DDAC
-_0811CC5A:
- ldr r1, [r5]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811CC86
-_0811CC64:
- bl sub_811DE10
- lsls r0, 24
- cmp r0, 0
- bne _0811CC86
- bl sub_811E30C
- bl sub_811E64C
- bl sub_811E794
- ldr r1, [r5]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811CC82:
- movs r0, 0
- b _0811CC88
-_0811CC86:
- movs r0, 0x1
-_0811CC88:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_811CC08
-
- thumb_func_start sub_811CC90
-sub_811CC90: @ 811CC90
- push {r4,r5,lr}
- ldr r5, =gUnknown_0203A11C
- ldr r0, [r5]
- ldrh r0, [r0]
- cmp r0, 0x1
- beq _0811CCBC
- cmp r0, 0x1
- bgt _0811CCAC
- cmp r0, 0
- beq _0811CCB6
- b _0811CD0A
- .pool
-_0811CCAC:
- cmp r0, 0x2
- beq _0811CCEC
- cmp r0, 0x3
- beq _0811CD06
- b _0811CD0A
-_0811CCB6:
- bl sub_811D830
- b _0811CCE2
-_0811CCBC:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811CD0A
- bl sub_811BBDC
- adds r4, r0, 0
- bl sub_811DE48
- lsls r4, 24
- lsrs r4, 24
- subs r4, r0
- lsls r4, 16
- asrs r4, 16
- adds r0, r4, 0
- movs r1, 0x8
- bl sub_811DDAC
-_0811CCE2:
- ldr r1, [r5]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811CD0A
-_0811CCEC:
- bl sub_811DE10
- lsls r0, 24
- cmp r0, 0
- bne _0811CD0A
- bl sub_811E64C
- bl sub_811E794
- ldr r1, [r5]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
-_0811CD06:
- movs r0, 0
- b _0811CD0C
-_0811CD0A:
- movs r0, 0x1
-_0811CD0C:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_811CC90
-
- thumb_func_start sub_811CD14
-sub_811CD14: @ 811CD14
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811CD2C
- cmp r0, 0x1
- beq _0811CD40
- b _0811CD4A
- .pool
-_0811CD2C:
- bl sub_811DF90
- movs r0, 0x4
- bl sub_811D104
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811CD4A
-_0811CD40:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
- b _0811CD4C
-_0811CD4A:
- movs r0, 0x1
-_0811CD4C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811CD14
-
- thumb_func_start sub_811CD54
-sub_811CD54: @ 811CD54
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811CD6C
- cmp r0, 0x1
- beq _0811CD80
- b _0811CD8A
- .pool
-_0811CD6C:
- bl sub_811DF90
- movs r0, 0x5
- bl sub_811D104
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811CD8A
-_0811CD80:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
- b _0811CD8C
-_0811CD8A:
- movs r0, 0x1
-_0811CD8C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811CD54
-
- thumb_func_start sub_811CD94
-sub_811CD94: @ 811CD94
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811CDAC
- cmp r0, 0x1
- beq _0811CDC0
- b _0811CDCA
- .pool
-_0811CDAC:
- bl sub_811DF90
- movs r0, 0x6
- bl sub_811D104
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811CDCA
-_0811CDC0:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
- b _0811CDCC
-_0811CDCA:
- movs r0, 0x1
-_0811CDCC:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811CD94
-
- thumb_func_start sub_811CDD4
-sub_811CDD4: @ 811CDD4
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811CDEC
- cmp r0, 0x1
- beq _0811CE00
- b _0811CE0A
- .pool
-_0811CDEC:
- bl sub_811DF90
- movs r0, 0x7
- bl sub_811D104
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811CE0A
-_0811CE00:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
- b _0811CE0C
-_0811CE0A:
- movs r0, 0x1
-_0811CE0C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811CDD4
-
- thumb_func_start sub_811CE14
-sub_811CE14: @ 811CE14
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811CE2C
- cmp r0, 0x1
- beq _0811CE40
- b _0811CE4A
- .pool
-_0811CE2C:
- bl sub_811DF90
- movs r0, 0x8
- bl sub_811D104
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811CE4A
-_0811CE40:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
- b _0811CE4C
-_0811CE4A:
- movs r0, 0x1
-_0811CE4C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811CE14
-
- thumb_func_start sub_811CE54
-sub_811CE54: @ 811CE54
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r0, [r4]
- ldrh r0, [r0]
- cmp r0, 0
- beq _0811CE6C
- cmp r0, 0x1
- beq _0811CE80
- b _0811CE8A
- .pool
-_0811CE6C:
- bl sub_811DF90
- movs r0, 0x9
- bl sub_811D104
- ldr r1, [r4]
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811CE8A
-_0811CE80:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- lsrs r0, 24
- b _0811CE8C
-_0811CE8A:
- movs r0, 0x1
-_0811CE8C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811CE54
-
- thumb_func_start sub_811CE94
-sub_811CE94: @ 811CE94
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- movs r0, 0x98
- lsls r0, 5
- bl Alloc
- adds r2, r0, 0
- str r2, [r4]
- cmp r2, 0
- beq _0811CEFC
- movs r1, 0
- strh r1, [r2]
- movs r3, 0xB6
- lsls r3, 2
- adds r0, r2, r3
- str r1, [r0]
- adds r3, 0x4
- adds r0, r2, r3
- str r1, [r0]
- adds r3, 0x4
- adds r0, r2, r3
- str r1, [r0]
- adds r3, 0x4
- adds r0, r2, r3
- str r1, [r0]
- adds r3, 0x4
- adds r0, r2, r3
- str r1, [r0]
- adds r3, 0x4
- adds r0, r2, r3
- str r1, [r0]
- adds r3, 0x4
- adds r0, r2, r3
- str r1, [r0]
- adds r3, 0x4
- adds r0, r2, r3
- str r1, [r0]
- adds r3, 0x4
- adds r0, r2, r3
- str r1, [r0]
- adds r3, 0x4
- adds r0, r2, r3
- str r1, [r0]
- bl sub_811BC70
- ldr r1, [r4]
- strb r0, [r1, 0xA]
- movs r0, 0x1
- b _0811CEFE
- .pool
-_0811CEFC:
- movs r0, 0
-_0811CEFE:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811CE94
-
- thumb_func_start sub_811CF04
-sub_811CF04: @ 811CF04
- push {lr}
- movs r0, 0x3
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0x3
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0x2
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0x2
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgX
- movs r0, 0
- movs r1, 0
- movs r2, 0
- bl ChangeBgY
- movs r1, 0xC1
- lsls r1, 6
- movs r0, 0
- bl SetGpuReg
- pop {r0}
- bx r0
- thumb_func_end sub_811CF04
-
- thumb_func_start sub_811CF64
-sub_811CF64: @ 811CF64
- push {r4,lr}
- bl ResetPaletteFade
- ldr r0, =gEasyChatMode_Pal
- movs r1, 0
- movs r2, 0x20
- bl LoadPalette
- ldr r0, =gUnknown_08597B14
- movs r1, 0x10
- movs r2, 0x20
- bl LoadPalette
- ldr r0, =gUnknown_08597B34
- movs r1, 0x40
- movs r2, 0x20
- bl LoadPalette
- ldr r0, =gUnknown_08597C1C
- movs r1, 0xA0
- movs r2, 0x8
- bl LoadPalette
- ldr r4, =gUnknown_08597C24
- adds r0, r4, 0
- movs r1, 0xB0
- movs r2, 0xC
- bl LoadPalette
- adds r0, r4, 0
- movs r1, 0xF0
- movs r2, 0xC
- bl LoadPalette
- adds r0, r4, 0
- movs r1, 0x30
- movs r2, 0xC
- bl LoadPalette
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811CF64
-
- thumb_func_start sub_811CFCC
-sub_811CFCC: @ 811CFCC
- push {r4,r5,lr}
- sub sp, 0x14
- bl sub_811BA88
- adds r5, r0, 0
- cmp r5, 0
- beq _0811D020
- movs r0, 0x1
- adds r1, r5, 0
- movs r2, 0x90
- bl GetStringCenterAlignXOffset
- adds r4, r0, 0
- movs r0, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r0, 0x2
- str r0, [sp, 0xC]
- movs r0, 0x3
- str r0, [sp, 0x10]
- movs r0, 0
- movs r1, 0x1
- adds r2, r5, 0
- adds r3, r4, 0
- bl sub_811D058
- movs r0, 0
- bl PutWindowTilemap
- movs r0, 0
- movs r1, 0x3
- bl CopyWindowToVram
-_0811D020:
- add sp, 0x14
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811CFCC
-
- thumb_func_start sub_811D028
-sub_811D028: @ 811D028
- push {r4-r6,lr}
- sub sp, 0xC
- ldr r4, [sp, 0x1C]
- ldr r5, [sp, 0x20]
- ldr r6, [sp, 0x24]
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r3, 24
- lsrs r3, 24
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- str r4, [sp]
- str r5, [sp, 0x4]
- str r6, [sp, 0x8]
- bl AddTextPrinterParameterized
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_811D028
-
- thumb_func_start sub_811D058
-sub_811D058: @ 811D058
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- mov r9, r3
- ldr r3, [sp, 0x30]
- ldr r4, [sp, 0x34]
- mov r8, r4
- ldr r7, [sp, 0x38]
- mov r10, r7
- ldr r5, [sp, 0x3C]
- ldr r6, [sp, 0x40]
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r4, r9
- lsls r4, 24
- lsrs r4, 24
- mov r9, r4
- lsls r3, 24
- lsrs r3, 24
- lsls r5, 24
- lsrs r5, 24
- lsls r6, 24
- lsrs r6, 24
- add r4, sp, 0xC
- mov r7, r10
- strb r7, [r4]
- strb r5, [r4, 0x1]
- strb r6, [r4, 0x2]
- str r4, [sp]
- mov r4, r8
- lsls r4, 24
- asrs r4, 24
- str r4, [sp, 0x4]
- str r2, [sp, 0x8]
- mov r2, r9
- bl AddTextPrinterParameterized3
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_811D058
-
- thumb_func_start sub_811D0BC
-sub_811D0BC: @ 811D0BC
- push {lr}
- sub sp, 0xC
- movs r0, 0x20
- str r0, [sp]
- movs r0, 0x14
- str r0, [sp, 0x4]
- movs r0, 0x11
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl FillBgTilemapBufferRect
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0xE0
- bl LoadUserWindowBorderGfx
- movs r0, 0x1
- movs r1, 0x1
- movs r2, 0xE
- bl sub_8098858
- movs r0, 0
- bl sub_811D104
- movs r0, 0x1
- bl PutWindowTilemap
- movs r0, 0
- bl CopyBgTilemapBufferToVram
- add sp, 0xC
- pop {r0}
- bx r0
- thumb_func_end sub_811D0BC
-
- thumb_func_start sub_811D104
-sub_811D104: @ 811D104
- push {lr}
- sub sp, 0x14
- lsls r0, 24
- lsrs r1, r0, 24
- movs r0, 0
- str r0, [sp, 0x10]
- str r0, [sp, 0xC]
- cmp r1, 0x9
- bhi _0811D1BC
- lsls r0, r1, 2
- ldr r1, =_0811D124
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0811D124:
- .4byte _0811D14C
- .4byte _0811D16A
- .4byte _0811D156
- .4byte _0811D160
- .4byte _0811D174
- .4byte _0811D180
- .4byte _0811D18C
- .4byte _0811D19C
- .4byte _0811D1A8
- .4byte _0811D1B4
-_0811D14C:
- add r1, sp, 0x10
- add r0, sp, 0xC
- bl sub_811BAD0
- b _0811D1BC
-_0811D156:
- add r1, sp, 0x10
- add r0, sp, 0xC
- bl sub_811BB40
- b _0811D1BC
-_0811D160:
- add r1, sp, 0x10
- add r0, sp, 0xC
- bl sub_811BB08
- b _0811D1BC
-_0811D16A:
- add r1, sp, 0x10
- add r0, sp, 0xC
- bl sub_811BB88
- b _0811D1BC
-_0811D174:
- ldr r0, =gText_CreateAQuiz
- str r0, [sp, 0xC]
- b _0811D1BC
- .pool
-_0811D180:
- ldr r0, =gText_SelectTheAnswer
- str r0, [sp, 0xC]
- b _0811D1BC
- .pool
-_0811D18C:
- ldr r0, =gText_OnlyOnePhrase
- str r0, [sp, 0xC]
- ldr r0, =gText_OriginalSongWillBeUsed
- b _0811D1BA
- .pool
-_0811D19C:
- ldr r0, =gText_LyricsCantBeDeleted
- str r0, [sp, 0xC]
- b _0811D1BC
- .pool
-_0811D1A8:
- ldr r0, =gText_CombineTwoWordsOrPhrases3
- str r0, [sp, 0xC]
- b _0811D1BC
- .pool
-_0811D1B4:
- ldr r0, =gText_YouCannotQuitHere
- str r0, [sp, 0xC]
- ldr r0, =gText_SectionMustBeCompleted
-_0811D1BA:
- str r0, [sp, 0x10]
-_0811D1BC:
- movs r0, 0x1
- movs r1, 0x11
- bl FillWindowPixelBuffer
- ldr r2, [sp, 0xC]
- cmp r2, 0
- beq _0811D1E0
- movs r0, 0x1
- str r0, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r0, 0x1
- movs r1, 0x1
- movs r3, 0
- bl sub_811D028
-_0811D1E0:
- ldr r2, [sp, 0x10]
- cmp r2, 0
- beq _0811D1FC
- movs r0, 0x11
- str r0, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r0, 0x1
- movs r1, 0x1
- movs r3, 0
- bl sub_811D028
-_0811D1FC:
- movs r0, 0x1
- movs r1, 0x3
- bl CopyWindowToVram
- add sp, 0x14
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811D104
-
- thumb_func_start sub_811D214
-sub_811D214: @ 811D214
- push {lr}
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- ldr r0, =gUnknown_08597C84
- movs r1, 0x1
- movs r2, 0xE
- bl CreateYesNoMenu
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811D214
-
- thumb_func_start sub_811D230
-sub_811D230: @ 811D230
- push {r4-r6,lr}
- sub sp, 0x8
- bl sub_811BA68
- lsls r0, 24
- ldr r6, =0xffffff00
- ldr r4, [sp]
- ands r4, r6
- movs r1, 0x3
- orrs r4, r1
- str r4, [sp]
- ldr r1, =gUnknown_08597C30
- lsrs r0, 22
- adds r0, r1
- ldrb r3, [r0]
- lsls r1, r3, 27
- lsrs r1, 19
- ldr r5, =0xffff00ff
- adds r2, r5, 0
- ands r2, r4
- orrs r2, r1
- lsrs r3, 5
- lsls r3, 16
- ldr r1, =0xff00ffff
- ands r2, r1
- orrs r2, r3
- str r2, [sp]
- ldrb r3, [r0, 0x1]
- lsls r3, 24
- ldr r1, =0x00ffffff
- ands r1, r2
- orrs r1, r3
- str r1, [sp]
- ldrb r1, [r0, 0x2]
- ldr r0, [sp, 0x4]
- ands r0, r6
- orrs r0, r1
- ands r0, r5
- movs r1, 0xB0
- lsls r1, 4
- orrs r0, r1
- ldr r1, =0x0000ffff
- ands r0, r1
- movs r1, 0xD8
- lsls r1, 15
- orrs r0, r1
- str r0, [sp, 0x4]
- mov r0, sp
- bl AddWindow
- ldr r1, =gUnknown_0203A11C
- ldr r1, [r1]
- strh r0, [r1, 0x2]
- lsls r0, 24
- lsrs r0, 24
- bl PutWindowTilemap
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811D230
-
- thumb_func_start sub_811D2C8
-sub_811D2C8: @ 811D2C8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x18
- bl sub_811BA94
- adds r4, r0, 0
- bl sub_811BAAC
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x10]
- bl sub_811BAA0
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x14]
- bl sub_811BA68
- lsls r0, 24
- lsrs r6, r0, 24
- movs r0, 0
- mov r8, r0
- cmp r6, 0x7
- bne _0811D302
- movs r1, 0x1
- mov r8, r1
-_0811D302:
- ldr r0, =gUnknown_0203A11C
- ldr r0, [r0]
- ldrb r0, [r0, 0x2]
- movs r1, 0x11
- bl FillWindowPixelBuffer
- movs r7, 0
- ldr r0, [sp, 0x14]
- cmp r7, r0
- bge _0811D402
-_0811D316:
- add r0, sp, 0xC
- ldr r1, =gUnknown_08597C8C
- movs r2, 0x4
- bl memcpy
- mov r1, r8
- cmp r1, 0
- beq _0811D32C
- add r1, sp, 0xC
- movs r0, 0x6
- strb r0, [r1, 0x2]
-_0811D32C:
- ldr r0, =gUnknown_0203A11C
- ldr r1, [r0]
- adds r2, r1, 0
- adds r2, 0xB
- movs r0, 0xFF
- strb r0, [r1, 0xB]
- adds r0, r2, 0
- add r1, sp, 0xC
- bl StringAppend
- adds r2, r0, 0
- movs r5, 0
- lsls r0, r7, 4
- mov r9, r0
- adds r1, r7, 0x1
- mov r10, r1
- b _0811D3CE
- .pool
-_0811D358:
- ldrh r0, [r4]
- ldr r1, =0x0000ffff
- cmp r0, r1
- beq _0811D374
- adds r1, r0, 0
- adds r0, r2, 0
- bl CopyEasyChatWord
- adds r2, r0, 0
- adds r4, 0x2
- b _0811D3A2
- .pool
-_0811D374:
- adds r4, 0x2
- mov r0, r8
- cmp r0, 0
- bne _0811D3A8
- adds r0, r2, 0
- movs r1, 0
- movs r2, 0x4
- bl WriteColorChangeControlCode
- adds r2, r0, 0
- movs r1, 0xAE
- movs r0, 0xB
-_0811D38C:
- strb r1, [r2]
- adds r2, 0x1
- subs r0, 0x1
- cmp r0, 0
- bge _0811D38C
- adds r0, r2, 0
- movs r1, 0
- movs r2, 0x2
- bl WriteColorChangeControlCode
- adds r2, r0, 0
-_0811D3A2:
- mov r1, r8
- cmp r1, 0
- beq _0811D3AE
-_0811D3A8:
- add r1, sp, 0xC
- movs r0, 0x3
- strb r0, [r1, 0x2]
-_0811D3AE:
- adds r0, r2, 0
- add r1, sp, 0xC
- bl StringAppend
- adds r2, r0, 0
- cmp r6, 0x2
- beq _0811D3C4
- cmp r6, 0x7
- beq _0811D3C4
- cmp r6, 0x8
- bne _0811D3CC
-_0811D3C4:
- cmp r5, 0
- bne _0811D3CC
- cmp r7, 0x4
- beq _0811D3D4
-_0811D3CC:
- adds r5, 0x1
-_0811D3CE:
- ldr r0, [sp, 0x10]
- cmp r5, r0
- blt _0811D358
-_0811D3D4:
- movs r0, 0xFF
- strb r0, [r2]
- ldr r0, =gUnknown_0203A11C
- ldr r2, [r0]
- ldrb r0, [r2, 0x2]
- adds r2, 0xB
- mov r1, r9
- adds r1, 0x1
- lsls r1, 24
- lsrs r1, 24
- str r1, [sp]
- movs r1, 0xFF
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x1
- movs r3, 0
- bl sub_811D028
- mov r7, r10
- ldr r1, [sp, 0x14]
- cmp r7, r1
- blt _0811D316
-_0811D402:
- ldr r0, =gUnknown_0203A11C
- ldr r0, [r0]
- ldrb r0, [r0, 0x2]
- movs r1, 0x3
- bl CopyWindowToVram
- add sp, 0x18
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811D2C8
-
- thumb_func_start sub_811D424
-sub_811D424: @ 811D424
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- mov r8, r0
- bl sub_811BA68
- lsls r0, 24
- lsrs r6, r0, 24
- movs r0, 0
- str r0, [sp]
- ldr r2, =0x01000200
- mov r0, sp
- mov r1, r8
- bl CpuFastSet
- cmp r6, 0x2
- beq _0811D450
- cmp r6, 0x8
- bne _0811D4D4
-_0811D450:
- ldr r0, =gUnknown_08597C30
- lsls r2, r6, 2
- adds r2, r0
- ldrb r1, [r2]
- lsls r3, r1, 27
- lsrs r0, r3, 27
- ldrb r4, [r2, 0x1]
- adds r5, r0, r4
- lsls r1, 24
- lsrs r0, r1, 29
- ldrb r2, [r2, 0x2]
- adds r2, r0
- mov r12, r2
- adds r6, r0, 0
- cmp r6, r12
- blt _0811D472
- b _0811D5D6
-_0811D472:
- mov r9, r3
-_0811D474:
- mov r0, r9
- lsrs r3, r0, 27
- subs r7, r3, 0x1
- lsls r2, r6, 5
- adds r0, r2, r7
- lsls r0, 1
- add r0, r8
- ldr r4, =0x00001005
- adds r1, r4, 0
- strh r1, [r0]
- adds r7, r3, 0
- adds r3, r2, 0
- adds r4, r6, 0x1
- cmp r7, r5
- bge _0811D4AE
- movs r0, 0x80
- lsls r0, 5
- adds r2, r0, 0
- lsls r1, r7, 1
- lsls r0, r6, 6
- add r0, r8
- adds r0, r1, r0
- subs r7, r5, r7
-_0811D4A2:
- strh r2, [r0]
- adds r0, 0x2
- subs r7, 0x1
- cmp r7, 0
- bne _0811D4A2
- adds r7, r5, 0
-_0811D4AE:
- adds r0, r3, r7
- lsls r0, 1
- add r0, r8
- ldr r2, =0x00001007
- adds r1, r2, 0
- strh r1, [r0]
- adds r6, r4, 0
- cmp r6, r12
- blt _0811D474
- b _0811D5D6
- .pool
-_0811D4D4:
- ldr r4, =gUnknown_08597C30
- mov r10, r4
- lsls r6, 2
- mov r9, r6
- mov r3, r9
- add r3, r10
- ldrb r0, [r3]
- lsls r2, r0, 24
- lsrs r1, r2, 29
- subs r6, r1, 0x1
- lsls r0, 27
- lsrs r4, r0, 27
- subs r7, r4, 0x1
- adds r0, r4, 0
- ldrb r1, [r3, 0x1]
- adds r5, r0, r1
- lsrs r2, 29
- ldrb r3, [r3, 0x2]
- adds r3, r2
- mov r12, r3
- lsls r0, r6, 5
- adds r0, r7
- lsls r0, 1
- add r0, r8
- ldr r2, =0x00001001
- adds r1, r2, 0
- strh r1, [r0]
- adds r7, r4, 0
- cmp r7, r5
- bge _0811D52A
- ldr r4, =0x00001002
- adds r2, r4, 0
- lsls r1, r7, 1
- lsls r0, r6, 6
- add r0, r8
- adds r1, r0
- subs r7, r5, r7
-_0811D51E:
- strh r2, [r1]
- adds r1, 0x2
- subs r7, 0x1
- cmp r7, 0
- bne _0811D51E
- adds r7, r5, 0
-_0811D52A:
- lsls r0, r6, 5
- adds r0, r7
- lsls r0, 1
- add r0, r8
- ldr r2, =0x00001003
- adds r1, r2, 0
- strh r1, [r0]
- adds r6, 0x1
- cmp r6, r12
- bge _0811D590
- ldr r0, =gUnknown_08597C30
- add r0, r9
- ldrb r0, [r0]
- lsls r3, r0, 27
-_0811D546:
- lsrs r0, r3, 27
- subs r7, r0, 0x1
- lsls r1, r6, 5
- adds r1, r7
- lsls r1, 1
- add r1, r8
- ldr r4, =0x00001005
- adds r2, r4, 0
- strh r2, [r1]
- adds r7, r0, 0
- adds r4, r6, 0x1
- cmp r7, r5
- bge _0811D57C
- movs r0, 0x80
- lsls r0, 5
- adds r2, r0, 0
- lsls r1, r7, 1
- lsls r0, r6, 6
- add r0, r8
- adds r1, r0
- subs r7, r5, r7
-_0811D570:
- strh r2, [r1]
- adds r1, 0x2
- subs r7, 0x1
- cmp r7, 0
- bne _0811D570
- adds r7, r5, 0
-_0811D57C:
- lsls r0, r6, 5
- adds r0, r7
- lsls r0, 1
- add r0, r8
- ldr r2, =0x00001007
- adds r1, r2, 0
- strh r1, [r0]
- adds r6, r4, 0
- cmp r6, r12
- blt _0811D546
-_0811D590:
- mov r0, r9
- add r0, r10
- ldrb r2, [r0]
- lsls r2, 27
- lsrs r2, 27
- subs r7, r2, 0x1
- lsls r3, r6, 5
- adds r0, r3, r7
- lsls r0, 1
- add r0, r8
- ldr r4, =0x00001009
- adds r1, r4, 0
- strh r1, [r0]
- adds r7, r2, 0
- cmp r7, r5
- bge _0811D5CA
- ldr r0, =0x0000100a
- adds r2, r0, 0
- lsls r1, r7, 1
- lsls r0, r6, 6
- add r0, r8
- adds r0, r1, r0
- subs r7, r5, r7
-_0811D5BE:
- strh r2, [r0]
- adds r0, 0x2
- subs r7, 0x1
- cmp r7, 0
- bne _0811D5BE
- adds r7, r5, 0
-_0811D5CA:
- adds r0, r3, r7
- lsls r0, 1
- add r0, r8
- ldr r2, =0x0000100b
- adds r1, r2, 0
- strh r1, [r0]
-_0811D5D6:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811D424
-
- thumb_func_start sub_811D60C
-sub_811D60C: @ 811D60C
- push {r4,lr}
- sub sp, 0x8
- movs r0, 0x3
- bl GetBgTilemapBuffer
- adds r4, r0, 0
- bl sub_811BA68
- lsls r0, 24
- ldr r1, =gUnknown_08597C30
- lsrs r0, 22
- adds r0, r1
- ldrb r1, [r0, 0x3]
- cmp r1, 0x2
- beq _0811D63E
- cmp r1, 0x2
- bgt _0811D638
- cmp r1, 0x1
- beq _0811D64C
- b _0811D67C
- .pool
-_0811D638:
- cmp r1, 0x3
- beq _0811D668
- b _0811D67C
-_0811D63E:
- movs r0, 0xA8
- lsls r0, 3
- adds r4, r0
- movs r0, 0x20
- str r0, [sp]
- str r1, [sp, 0x4]
- b _0811D65A
-_0811D64C:
- movs r0, 0xC0
- lsls r0, 3
- adds r4, r0
- movs r0, 0x20
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
-_0811D65A:
- movs r0, 0x3
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0xB
- bl CopyToBgTilemapBufferRect
- b _0811D67C
-_0811D668:
- movs r0, 0x20
- str r0, [sp]
- movs r0, 0x4
- str r0, [sp, 0x4]
- movs r0, 0x3
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0xA
- bl CopyToBgTilemapBufferRect
-_0811D67C:
- add sp, 0x8
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_811D60C
-
- thumb_func_start sub_811D684
-sub_811D684: @ 811D684
- push {lr}
- movs r0, 0x2
- bl PutWindowTilemap
- movs r0, 0x2
- bl CopyBgTilemapBufferToVram
- pop {r0}
- bx r0
- thumb_func_end sub_811D684
-
- thumb_func_start sub_811D698
-sub_811D698: @ 811D698
- push {r4,lr}
- adds r4, r0, 0
- bl sub_811DD84
- movs r0, 0x2
- movs r1, 0x11
- bl FillWindowPixelBuffer
- cmp r4, 0x1
- beq _0811D6BC
- cmp r4, 0x1
- bcc _0811D6B6
- cmp r4, 0x2
- beq _0811D6C2
- b _0811D6C6
-_0811D6B6:
- bl sub_811D6F4
- b _0811D6C6
-_0811D6BC:
- bl sub_811D758
- b _0811D6C6
-_0811D6C2:
- bl sub_811D794
-_0811D6C6:
- movs r0, 0x2
- movs r1, 0x2
- bl CopyWindowToVram
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_811D698
-
- thumb_func_start sub_811D6D4
-sub_811D6D4: @ 811D6D4
- push {lr}
- bl sub_811BBB0
- lsls r0, 24
- cmp r0, 0
- bne _0811D6E8
- movs r0, 0
- bl sub_811D698
- b _0811D6EE
-_0811D6E8:
- movs r0, 0x1
- bl sub_811D698
-_0811D6EE:
- pop {r0}
- bx r0
- thumb_func_end sub_811D6D4
-
- thumb_func_start sub_811D6F4
-sub_811D6F4: @ 811D6F4
- push {r4-r7,lr}
- sub sp, 0xC
- movs r5, 0
- movs r7, 0x61
-_0811D6FC:
- movs r4, 0
- lsls r0, r7, 24
- lsrs r6, r0, 24
-_0811D702:
- lsls r0, r5, 24
- lsrs r0, 24
- adds r5, 0x1
- bl sub_811F3B8
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x16
- beq _0811D742
- bl sub_811F424
- adds r2, r0, 0
- movs r0, 0x54
- adds r3, r4, 0
- muls r3, r0
- adds r3, 0xA
- lsls r3, 24
- lsrs r3, 24
- str r6, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r0, 0x2
- movs r1, 0x1
- bl sub_811D028
- adds r4, 0x1
- cmp r4, 0x1
- ble _0811D702
- adds r7, 0x10
- b _0811D6FC
-_0811D742:
- bl sub_811BBBC
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- bl sub_811DDAC
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_811D6F4
-
- thumb_func_start sub_811D758
-sub_811D758: @ 811D758
- push {r4-r6,lr}
- sub sp, 0xC
- movs r5, 0
- movs r4, 0xC2
- lsls r4, 23
- ldr r6, =gUnknown_08597C90
-_0811D764:
- ldm r6!, {r2}
- lsrs r0, r4, 24
- str r0, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- movs r0, 0
- str r0, [sp, 0x8]
- movs r0, 0x2
- movs r1, 0x1
- movs r3, 0xA
- bl sub_811D028
- movs r0, 0x80
- lsls r0, 21
- adds r4, r0
- adds r5, 0x1
- cmp r5, 0x3
- bls _0811D764
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811D758
-
- thumb_func_start sub_811D794
-sub_811D794: @ 811D794
- push {lr}
- movs r0, 0
- movs r1, 0x4
- bl sub_811D864
- pop {r0}
- bx r0
- thumb_func_end sub_811D794
-
- thumb_func_start sub_811D7A4
-sub_811D7A4: @ 811D7A4
- push {r4,lr}
- bl sub_811BBDC
- adds r4, r0, 0
- adds r4, 0x3
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_811D950
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_811D864
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_811D7A4
-
- thumb_func_start sub_811D7C8
-sub_811D7C8: @ 811D7C8
- push {r4,lr}
- bl sub_811BBDC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_811D950
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_811D864
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_811D7C8
-
- thumb_func_start sub_811D7EC
-sub_811D7EC: @ 811D7EC
- push {r4,r5,lr}
- bl sub_811BBDC
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- adds r0, r5, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_811BBE8
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- cmp r4, r0
- bls _0811D80E
- adds r4, r0, 0
-_0811D80E:
- cmp r5, r4
- bcs _0811D828
- subs r4, r5
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_811D950
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_811D864
-_0811D828:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811D7EC
-
- thumb_func_start sub_811D830
-sub_811D830: @ 811D830
- push {r4,r5,lr}
- bl sub_811BBDC
- lsls r0, 24
- lsrs r5, r0, 24
- bl sub_811DE48
- lsls r0, 24
- lsrs r0, 24
- cmp r5, r0
- bcs _0811D85C
- subs r4, r0, r5
- lsls r4, 24
- lsrs r4, 24
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_811D950
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_811D864
-_0811D85C:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811D830
-
- thumb_func_start sub_811D864
-sub_811D864: @ 811D864
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x18
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- str r1, [sp, 0x14]
- lsls r1, r0, 1
- mov r8, r1
- lsls r0, 4
- adds r1, r0, 0
- adds r1, 0x60
- movs r0, 0xFF
- ands r1, r0
- adds r1, 0x1
- movs r0, 0
- b _0811D930
-_0811D88E:
- movs r6, 0
- movs r2, 0x10
- adds r2, r1
- mov r9, r2
- adds r0, 0x1
- mov r10, r0
- lsls r0, r1, 24
- lsrs r7, r0, 24
-_0811D89E:
- mov r1, r8
- lsls r0, r1, 16
- lsrs r0, 16
- movs r2, 0x1
- add r8, r2
- bl sub_811F578
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, =0x0000ffff
- cmp r4, r0
- beq _0811D926
- ldr r5, =gUnknown_0203A11C
- ldr r0, [r5]
- adds r0, 0xCC
- adds r1, r4, 0
- movs r2, 0
- bl CopyEasyChatWordPadded
- adds r0, r4, 0
- bl sub_811BF88
- adds r1, r0, 0
- cmp r1, 0
- bne _0811D8FC
- ldr r2, [r5]
- adds r2, 0xCC
- movs r0, 0xD
- adds r3, r6, 0
- muls r3, r0
- adds r3, 0x3
- lsls r3, 27
- lsrs r3, 24
- str r7, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- str r1, [sp, 0x8]
- movs r0, 0x2
- movs r1, 0x1
- bl sub_811D028
- b _0811D926
- .pool
-_0811D8FC:
- ldr r2, [r5]
- adds r2, 0xCC
- movs r0, 0xD
- adds r3, r6, 0
- muls r3, r0
- adds r3, 0x3
- lsls r3, 27
- lsrs r3, 24
- str r7, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- movs r0, 0x1
- str r0, [sp, 0x8]
- movs r0, 0x5
- str r0, [sp, 0xC]
- movs r0, 0x3
- str r0, [sp, 0x10]
- movs r0, 0x2
- movs r1, 0x1
- bl sub_811D058
-_0811D926:
- adds r6, 0x1
- cmp r6, 0x1
- ble _0811D89E
- mov r1, r9
- mov r0, r10
-_0811D930:
- ldr r2, [sp, 0x14]
- cmp r0, r2
- blt _0811D88E
- movs r0, 0x2
- movs r1, 0x2
- bl CopyWindowToVram
- add sp, 0x18
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_811D864
-
- thumb_func_start sub_811D950
-sub_811D950: @ 811D950
- push {r4,r5,lr}
- sub sp, 0x8
- lsls r0, 24
- lsls r1, 24
- lsrs r0, 20
- adds r3, r0, 0
- adds r3, 0x60
- movs r0, 0xFF
- ands r3, r0
- lsrs r0, r1, 20
- adds r1, r3, r0
- cmp r1, 0xFF
- ble _0811D97C
- ldr r0, =0xffffff00
- adds r4, r1, r0
- movs r0, 0x80
- lsls r0, 1
- subs r0, r3
- b _0811D97E
- .pool
-_0811D97C:
- movs r4, 0
-_0811D97E:
- movs r5, 0xE0
- str r5, [sp]
- lsls r0, 16
- lsrs r0, 16
- str r0, [sp, 0x4]
- movs r0, 0x2
- movs r1, 0x11
- movs r2, 0
- bl FillWindowPixelRect
- cmp r4, 0
- beq _0811D9AA
- str r5, [sp]
- lsls r0, r4, 16
- lsrs r0, 16
- str r0, [sp, 0x4]
- movs r0, 0x2
- movs r1, 0x11
- movs r2, 0
- movs r3, 0
- bl FillWindowPixelRect
-_0811D9AA:
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811D950
-
- thumb_func_start sub_811D9B4
-sub_811D9B4: @ 811D9B4
- push {lr}
- movs r0, 0x2
- movs r1, 0x11
- bl FillWindowPixelBuffer
- movs r0, 0x2
- movs r1, 0x2
- bl CopyWindowToVram
- pop {r0}
- bx r0
- thumb_func_end sub_811D9B4
-
- thumb_func_start sub_811D9CC
-sub_811D9CC: @ 811D9CC
- push {lr}
- ldr r1, =gUnknown_0203A11C
- cmp r0, 0x6
- bhi _0811DA86
- lsls r0, 2
- ldr r1, =_0811D9E8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .pool
- .align 2, 0
-_0811D9E8:
- .4byte _0811DA04
- .4byte _0811DA18
- .4byte _0811DA28
- .4byte _0811DA3C
- .4byte _0811DA50
- .4byte _0811DA64
- .4byte _0811DA78
-_0811DA04:
- ldr r1, =gUnknown_0203A11C
- ldr r2, [r1]
- movs r0, 0
- strb r0, [r2, 0x6]
- ldr r2, [r1]
- movs r0, 0xA
- b _0811DA84
- .pool
-_0811DA18:
- ldr r1, =gUnknown_0203A11C
- ldr r2, [r1]
- movs r3, 0
- movs r0, 0x9
- b _0811DA44
- .pool
-_0811DA28:
- ldr r1, =gUnknown_0203A11C
- ldr r2, [r1]
- movs r0, 0xB
- strb r0, [r2, 0x6]
- ldr r2, [r1]
- movs r0, 0x11
- b _0811DA84
- .pool
-_0811DA3C:
- ldr r1, =gUnknown_0203A11C
- ldr r2, [r1]
- movs r3, 0
- movs r0, 0x11
-_0811DA44:
- strb r0, [r2, 0x6]
- ldr r0, [r1]
- strb r3, [r0, 0x7]
- b _0811DA86
- .pool
-_0811DA50:
- ldr r1, =gUnknown_0203A11C
- ldr r2, [r1]
- movs r0, 0x11
- strb r0, [r2, 0x6]
- ldr r2, [r1]
- movs r0, 0xA
- b _0811DA84
- .pool
-_0811DA64:
- ldr r1, =gUnknown_0203A11C
- ldr r2, [r1]
- movs r0, 0x12
- strb r0, [r2, 0x6]
- ldr r2, [r1]
- movs r0, 0x16
- b _0811DA84
- .pool
-_0811DA78:
- ldr r1, =gUnknown_0203A11C
- ldr r2, [r1]
- movs r0, 0x16
- strb r0, [r2, 0x6]
- ldr r2, [r1]
- movs r0, 0x12
-_0811DA84:
- strb r0, [r2, 0x7]
-_0811DA86:
- ldr r1, [r1]
- ldrb r0, [r1, 0x6]
- movs r3, 0x1
- negs r3, r3
- adds r2, r3, 0
- ldrb r3, [r1, 0x7]
- cmp r0, r3
- bcs _0811DA98
- movs r2, 0x1
-_0811DA98:
- strb r2, [r1, 0x8]
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_811D9CC
-
- thumb_func_start sub_811DAA4
-sub_811DAA4: @ 811DAA4
- push {r4,lr}
- ldr r4, =gUnknown_0203A11C
- ldr r1, [r4]
- ldrb r2, [r1, 0x6]
- ldrb r0, [r1, 0x7]
- cmp r2, r0
- beq _0811DAD4
- ldrb r0, [r1, 0x8]
- adds r0, r2, r0
- strb r0, [r1, 0x6]
- ldr r0, [r4]
- ldrb r0, [r0, 0x6]
- bl sub_811DADC
- ldr r0, [r4]
- ldrb r1, [r0, 0x6]
- ldrb r0, [r0, 0x7]
- eors r1, r0
- negs r0, r1
- orrs r0, r1
- lsrs r0, 31
- b _0811DAD6
- .pool
-_0811DAD4:
- movs r0, 0
-_0811DAD6:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811DAA4
-
thumb_func_start sub_811DADC
sub_811DADC: @ 811DADC
push {r4,lr}
diff --git a/asm/flying.s b/asm/flying.s
index c8010106a..37873f17b 100644
--- a/asm/flying.s
+++ b/asm/flying.s
@@ -5,823 +5,6 @@
.text
- thumb_func_start sub_810DE70
-sub_810DE70: @ 810DE70
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0
- bl InitSpritePosToAnimTarget
- ldrh r0, [r4, 0x22]
- adds r0, 0x14
- strh r0, [r4, 0x22]
- movs r0, 0xBF
- strh r0, [r4, 0x30]
- ldr r1, =sub_810DE98
- str r1, [r4, 0x1C]
- adds r0, r4, 0
- bl _call_via_r1
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_810DE70
-
- thumb_func_start sub_810DE98
-sub_810DE98: @ 810DE98
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- movs r1, 0x20
- bl Sin
- strh r0, [r4, 0x24]
- movs r1, 0x30
- ldrsh r0, [r4, r1]
- movs r1, 0x8
- bl Cos
- strh r0, [r4, 0x26]
- ldrh r0, [r4, 0x30]
- adds r0, 0x5
- movs r1, 0xFF
- ands r0, r1
- strh r0, [r4, 0x30]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x47
- bne _0810DED2
- adds r0, r4, 0
- bl DestroyAnimSprite
-_0810DED2:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_810DE98
-
- thumb_func_start sub_810DED8
-sub_810DED8: @ 810DED8
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, =gTasks
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- adds r4, r1
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1, 0x2]
- strh r0, [r4, 0x8]
- ldrh r0, [r1]
- strh r0, [r4, 0xA]
- ldr r0, =0x00002719
- bl IndexOfSpritePaletteTag
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0xC]
- ldr r0, =sub_810DF18
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_810DED8
-
- thumb_func_start sub_810DF18
-sub_810DF18: @ 810DF18
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r2, =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r3, r0, r2
- ldrh r0, [r3, 0x1C]
- adds r1, r0, 0x1
- strh r1, [r3, 0x1C]
- lsls r0, 16
- asrs r0, 16
- movs r4, 0xA
- ldrsh r1, [r3, r4]
- adds r7, r2, 0
- cmp r0, r1
- bne _0810DF76
- movs r0, 0
- strh r0, [r3, 0x1C]
- ldrb r0, [r3, 0xC]
- ldr r2, =gPlttBufferFaded
- lsls r0, 4
- movs r3, 0x84
- lsls r3, 1
- adds r1, r0, r3
- lsls r1, 1
- adds r1, r2
- ldrh r6, [r1]
- movs r4, 0x7
- mov r12, r0
- ldr r0, =0x00000107
- add r0, r12
- lsls r0, 1
- adds r3, r0, r2
-_0810DF5E:
- ldrh r0, [r3]
- strh r0, [r1]
- subs r3, 0x2
- subs r1, 0x2
- subs r4, 0x1
- cmp r4, 0
- bgt _0810DF5E
- ldr r0, =0x00000101
- add r0, r12
- lsls r0, 1
- adds r0, r2
- strh r6, [r0]
-_0810DF76:
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r7
- ldrh r1, [r0, 0x8]
- subs r1, 0x1
- strh r1, [r0, 0x8]
- lsls r1, 16
- cmp r1, 0
- bne _0810DF90
- adds r0, r5, 0
- bl DestroyAnimVisualTask
-_0810DF90:
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_810DF18
-
- thumb_func_start sub_810DFA8
-sub_810DFA8: @ 810DFA8
- push {r4-r6,lr}
- adds r6, r0, 0
- movs r1, 0x1
- bl InitSpritePosToAnimAttacker
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _0810DFC8
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1, 0x4]
- negs r0, r0
- strh r0, [r1, 0x4]
-_0810DFC8:
- ldr r4, =gBattleAnimArgs
- ldrh r0, [r4, 0x8]
- strh r0, [r6, 0x2E]
- ldrh r0, [r6, 0x20]
- strh r0, [r6, 0x30]
- ldr r5, =gBattleAnimTarget
- ldrb r0, [r5]
- movs r1, 0x2
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- ldrh r1, [r4, 0x4]
- adds r0, r1
- strh r0, [r6, 0x32]
- ldrh r0, [r6, 0x22]
- strh r0, [r6, 0x34]
- ldrb r0, [r5]
- movs r1, 0x3
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- ldrh r4, [r4, 0x6]
- adds r0, r4
- strh r0, [r6, 0x36]
- adds r0, r6, 0
- bl InitAnimLinearTranslation
- ldr r0, =RunStoredCallbackWhenAffineAnimEnds
- str r0, [r6, 0x1C]
- ldr r1, =sub_810E028
- adds r0, r6, 0
- bl StoreSpriteCallbackInData6
- pop {r4-r6}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_810DFA8
-
- thumb_func_start sub_810E028
-sub_810E028: @ 810E028
- push {r4,lr}
- adds r4, r0, 0
- bl AnimTranslateLinear
- lsls r0, 24
- cmp r0, 0
- beq _0810E03C
- adds r0, r4, 0
- bl DestroyAnimSprite
-_0810E03C:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_810E028
-
- thumb_func_start sub_810E044
-sub_810E044: @ 810E044
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r4, =gBattleAnimAttacker
- ldrb r0, [r4]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _0810E070
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1]
- negs r0, r0
- strh r0, [r1]
- ldrh r0, [r1, 0x2]
- negs r0, r0
- strh r0, [r1, 0x2]
- ldrh r0, [r1, 0x4]
- negs r0, r0
- strh r0, [r1, 0x4]
- ldrh r0, [r1, 0x6]
- negs r0, r0
- strh r0, [r1, 0x6]
-_0810E070:
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- beq _0810E088
- ldr r0, =gBattleAnimArgs
- ldrh r1, [r0, 0x2]
- negs r1, r1
- strh r1, [r0, 0x2]
- ldrh r1, [r0, 0x6]
- negs r1, r1
- strh r1, [r0, 0x6]
-_0810E088:
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x20]
- ldrb r0, [r4]
- movs r1, 0x3
- bl GetBattlerSpriteCoord
- lsls r0, 24
- ldr r2, =gBattleAnimArgs
- ldrh r1, [r2]
- ldrh r3, [r5, 0x20]
- adds r1, r3
- strh r1, [r5, 0x20]
- lsrs r0, 24
- ldrh r1, [r2, 0x2]
- adds r0, r1
- strh r0, [r5, 0x22]
- ldrh r0, [r2, 0x8]
- strh r0, [r5, 0x2E]
- movs r3, 0xC
- ldrsh r0, [r2, r3]
- cmp r0, 0
- bne _0810E0EC
- ldr r4, =gBattleAnimTarget
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x32]
- ldrb r0, [r4]
- movs r1, 0x3
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x36]
- b _0810E0FE
- .pool
-_0810E0EC:
- ldr r0, =gBattleAnimTarget
- ldrb r0, [r0]
- adds r2, r5, 0
- adds r2, 0x32
- adds r3, r5, 0
- adds r3, 0x36
- movs r1, 0x1
- bl SetAverageBattlerPositions
-_0810E0FE:
- ldr r4, =gBattleAnimArgs
- ldrh r0, [r4, 0x4]
- ldrh r1, [r5, 0x32]
- adds r0, r1
- strh r0, [r5, 0x32]
- ldrh r0, [r4, 0x6]
- ldrh r3, [r5, 0x36]
- adds r0, r3
- strh r0, [r5, 0x36]
- ldr r0, =StartAnimLinearTranslation
- str r0, [r5, 0x1C]
- ldr r1, =DestroyAnimSprite
- adds r0, r5, 0
- bl StoreSpriteCallbackInData6
- ldrb r1, [r4, 0xA]
- adds r0, r5, 0
- bl SeekSpriteAnim
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_810E044
-
- thumb_func_start sub_810E13C
-sub_810E13C: @ 810E13C
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x1
- bl InitSpritePosToAnimAttacker
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1, 0x4]
- strh r0, [r4, 0x2E]
- ldrh r0, [r1, 0x6]
- strh r0, [r4, 0x30]
- ldr r0, =sub_810E184
- str r0, [r4, 0x1C]
- movs r0, 0
- bl GetAnimBattlerSpriteId
- ldr r2, =gSprites
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- adds r1, 0x3E
- ldrb r0, [r1]
- movs r2, 0x4
- orrs r0, r2
- strb r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_810E13C
-
- thumb_func_start sub_810E184
-sub_810E184: @ 810E184
- push {lr}
- adds r2, r0, 0
- ldrh r1, [r2, 0x2E]
- movs r3, 0x2E
- ldrsh r0, [r2, r3]
- cmp r0, 0
- ble _0810E198
- subs r0, r1, 0x1
- strh r0, [r2, 0x2E]
- b _0810E1AA
-_0810E198:
- ldrh r0, [r2, 0x30]
- ldrh r1, [r2, 0x32]
- adds r0, r1
- strh r0, [r2, 0x32]
- lsls r0, 16
- asrs r0, 24
- ldrh r1, [r2, 0x26]
- subs r1, r0
- strh r1, [r2, 0x26]
-_0810E1AA:
- movs r3, 0x22
- ldrsh r0, [r2, r3]
- movs r3, 0x26
- ldrsh r1, [r2, r3]
- adds r0, r1
- movs r1, 0x20
- negs r1, r1
- cmp r0, r1
- bge _0810E1C2
- adds r0, r2, 0
- bl DestroyAnimSprite
-_0810E1C2:
- pop {r0}
- bx r0
- thumb_func_end sub_810E184
-
- thumb_func_start sub_810E1C8
-sub_810E1C8: @ 810E1C8
- push {r4,r5,lr}
- adds r5, r0, 0
- ldr r0, =gBattleAnimAttacker
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _0810E1F8
- movs r0, 0x88
- lsls r0, 1
- strh r0, [r5, 0x20]
- ldr r0, =0x0000ffe0
- strh r0, [r5, 0x22]
- adds r0, r5, 0
- movs r1, 0x1
- bl StartSpriteAffineAnim
- b _0810E1FE
- .pool
-_0810E1F8:
- ldr r0, =0x0000ffe0
- strh r0, [r5, 0x20]
- strh r0, [r5, 0x22]
-_0810E1FE:
- ldr r0, =gBattleAnimArgs
- ldrh r0, [r0]
- strh r0, [r5, 0x2E]
- ldrh r0, [r5, 0x20]
- strh r0, [r5, 0x30]
- ldr r4, =gBattleAnimTarget
- ldrb r0, [r4]
- movs r1, 0x2
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x32]
- ldrh r0, [r5, 0x22]
- strh r0, [r5, 0x34]
- ldrb r0, [r4]
- movs r1, 0x3
- bl GetBattlerSpriteCoord
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0x36]
- adds r0, r5, 0
- bl InitAnimLinearTranslation
- ldr r0, =sub_810E24C
- str r0, [r5, 0x1C]
- pop {r4,r5}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_810E1C8
-
- thumb_func_start sub_810E24C
-sub_810E24C: @ 810E24C
- push {r4,lr}
- adds r4, r0, 0
- movs r0, 0x1
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- bl AnimTranslateLinear
- ldrh r1, [r4, 0x34]
- lsrs r0, r1, 8
- cmp r0, 0xC8
- bls _0810E274
- ldrh r0, [r4, 0x24]
- ldrh r2, [r4, 0x20]
- adds r0, r2
- strh r0, [r4, 0x20]
- movs r0, 0
- strh r0, [r4, 0x24]
- movs r0, 0xFF
- ands r0, r1
- strh r0, [r4, 0x34]
-_0810E274:
- movs r1, 0x20
- ldrsh r0, [r4, r1]
- movs r2, 0x24
- ldrsh r1, [r4, r2]
- adds r0, r1
- adds r0, 0x20
- movs r1, 0x98
- lsls r1, 1
- cmp r0, r1
- bhi _0810E296
- movs r1, 0x22
- ldrsh r0, [r4, r1]
- movs r2, 0x26
- ldrsh r1, [r4, r2]
- adds r0, r1
- cmp r0, 0xA0
- ble _0810E2BC
-_0810E296:
- movs r0, 0
- bl GetAnimBattlerSpriteId
- ldr r2, =gSprites
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- adds r1, 0x3E
- ldrb r2, [r1]
- movs r0, 0x5
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- adds r0, r4, 0
- bl DestroyAnimSprite
-_0810E2BC:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_810E24C
-
- thumb_func_start sub_810E2C8
-sub_810E2C8: @ 810E2C8
- push {r4,lr}
- adds r4, r0, 0
- ldrh r0, [r4, 0x2E]
- subs r1, r0, 0x1
- strh r1, [r4, 0x2E]
- lsls r0, 16
- cmp r0, 0
- bgt _0810E308
- ldrb r0, [r4, 0x1]
- lsls r0, 30
- lsrs r0, 30
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _0810E2FA
- ldrb r0, [r4, 0x3]
- lsls r0, 26
- lsrs r0, 27
- bl FreeOamMatrix
- ldrb r1, [r4, 0x1]
- movs r0, 0x4
- negs r0, r0
- ands r0, r1
- strb r0, [r4, 0x1]
-_0810E2FA:
- adds r0, r4, 0
- bl DestroySprite
- ldr r1, =gAnimVisualTaskCount
- ldrb r0, [r1]
- subs r0, 0x1
- strb r0, [r1]
-_0810E308:
- pop {r4}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_810E2C8
-
- thumb_func_start sub_810E314
-sub_810E314: @ 810E314
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r7, r0, 0
- adds r5, r7, 0
- adds r5, 0x2E
- ldr r0, =gBattleAnimArgs
- ldrh r1, [r0, 0xE]
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _0810E33C
- ldr r0, =gBattleAnimAttacker
- b _0810E33E
- .pool
-_0810E33C:
- ldr r0, =gBattleAnimTarget
-_0810E33E:
- ldrb r6, [r0]
- adds r0, r6, 0
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _0810E354
- ldr r1, =gBattleAnimArgs
- ldrh r0, [r1]
- negs r0, r0
- strh r0, [r1]
-_0810E354:
- adds r0, r6, 0
- movs r1, 0
- bl GetBattlerSpriteCoord
- lsls r0, 24
- ldr r4, =gBattleAnimArgs
- lsrs r0, 24
- ldrh r1, [r4]
- adds r0, r1
- strh r0, [r7, 0x20]
- adds r0, r6, 0
- movs r1, 0x1
- bl GetBattlerSpriteCoord
- lsls r0, 24
- ldrh r1, [r4, 0x2]
- lsrs r0, 24
- adds r1, r0, r1
- strh r1, [r7, 0x22]
- lsls r1, 8
- strh r1, [r5, 0x8]
- ldrh r1, [r4, 0xC]
- adds r0, r1
- lsls r0, 1
- ldrh r2, [r5, 0xE]
- movs r1, 0x1
- ands r1, r2
- orrs r1, r0
- strh r1, [r5, 0xE]
- ldrb r0, [r5]
- movs r2, 0x4
- mov r8, r2
- mov r1, r8
- orrs r0, r1
- strb r0, [r5]
- ldrh r0, [r4, 0x4]
- ldrb r1, [r4, 0x4]
- strh r1, [r5, 0x2]
- lsls r0, 16
- lsrs r0, 24
- strh r0, [r5, 0xA]
- ldrh r0, [r4, 0x6]
- strh r0, [r5, 0x4]
- ldrh r0, [r4, 0x8]
- strh r0, [r5, 0x6]
- ldrh r0, [r4, 0xA]
- strh r0, [r5, 0xC]
- subs r1, 0x40
- lsls r1, 16
- lsrs r1, 16
- cmp r1, 0x7F
- bhi _0810E44A
- bl IsContest
- lsls r0, 24
- cmp r0, 0
- bne _0810E3F0
- adds r0, r6, 0
- bl GetBattlerSpriteBGPriority
- lsls r0, 24
- lsrs r0, 24
- adds r0, 0x1
- movs r1, 0x3
- ands r0, r1
- lsls r0, 2
- ldrb r2, [r7, 0x5]
- movs r1, 0xD
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r7, 0x5]
- b _0810E408
- .pool
-_0810E3F0:
- adds r0, r6, 0
- bl GetBattlerSpriteBGPriority
- movs r1, 0x3
- ands r1, r0
- lsls r1, 2
- ldrb r2, [r7, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r7, 0x5]
-_0810E408:
- ldrb r1, [r5, 0xE]
- movs r4, 0x2
- negs r4, r4
- adds r0, r4, 0
- ands r0, r1
- strb r0, [r5, 0xE]
- movs r2, 0x4
- ldrsh r0, [r5, r2]
- movs r1, 0x80
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- bne _0810E4AA
- adds r3, r7, 0
- adds r3, 0x3F
- ldrb r2, [r3]
- lsls r0, r2, 31
- lsrs r0, 31
- movs r1, 0x1
- eors r1, r0
- adds r0, r4, 0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- lsls r0, 31
- lsrs r0, 31
- adds r1, r7, 0
- adds r1, 0x2A
- strb r0, [r1]
- ldrb r0, [r3]
- movs r1, 0x4
- orrs r0, r1
- b _0810E4A2
-_0810E44A:
- adds r0, r6, 0
- bl GetBattlerSpriteBGPriority
- movs r1, 0x3
- ands r1, r0
- lsls r1, 2
- ldrb r2, [r7, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r7, 0x5]
- ldrb r0, [r5, 0xE]
- movs r4, 0x1
- orrs r0, r4
- strb r0, [r5, 0xE]
- movs r1, 0x4
- ldrsh r0, [r5, r1]
- movs r1, 0x80
- lsls r1, 8
- ands r0, r1
- cmp r0, 0
- beq _0810E4AA
- adds r3, r7, 0
- adds r3, 0x3F
- ldrb r2, [r3]
- lsls r1, r2, 31
- lsrs r1, 31
- movs r0, 0x1
- eors r1, r0
- ands r1, r4
- movs r0, 0x2
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- lsls r0, 31
- lsrs r0, 31
- adds r1, r7, 0
- adds r1, 0x2A
- strb r0, [r1]
- ldrb r0, [r3]
- mov r2, r8
- orrs r0, r2
-_0810E4A2:
- movs r1, 0x11
- negs r1, r1
- ands r0, r1
- strb r0, [r3]
-_0810E4AA:
- ldrh r1, [r5, 0x2]
- lsrs r1, 6
- lsls r1, 4
- ldrb r2, [r5]
- movs r0, 0xF
- ands r0, r2
- orrs r0, r1
- strb r0, [r5]
- ldr r3, =gSineTable
- ldrh r0, [r5, 0x2]
- lsls r0, 1
- adds r0, r3
- movs r2, 0
- ldrsh r1, [r0, r2]
- ldrb r0, [r5, 0xC]
- muls r0, r1
- asrs r0, 8
- strh r0, [r7, 0x24]
- ldrb r2, [r7, 0x3]
- lsls r2, 26
- lsrs r2, 27
- movs r1, 0x24
- ldrsh r0, [r7, r1]
- negs r0, r0
- asrs r0, 1
- ldrb r5, [r5, 0xA]
- adds r0, r5
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 1
- adds r1, r3
- ldrh r4, [r1]
- ldr r1, =gOamMatrices
- lsls r2, 3
- adds r2, r1
- adds r0, 0x40
- lsls r0, 1
- adds r0, r3
- ldrh r0, [r0]
- strh r0, [r2, 0x6]
- strh r0, [r2]
- strh r4, [r2, 0x2]
- lsls r0, r4, 16
- asrs r0, 16
- negs r0, r0
- strh r0, [r2, 0x4]
- ldr r0, =sub_810E520
- str r0, [r7, 0x1C]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .pool
- thumb_func_end sub_810E314
-
thumb_func_start sub_810E520
sub_810E520: @ 810E520
push {r4-r7,lr}