diff options
Diffstat (limited to 'asm')
-rw-r--r-- | asm/contest_link_80F57C4.s | 2512 | ||||
-rw-r--r-- | asm/easy_chat.s | 5972 | ||||
-rw-r--r-- | asm/flying.s | 817 |
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} |