diff options
Diffstat (limited to 'asm/easy_chat.s')
-rw-r--r-- | asm/easy_chat.s | 3953 |
1 files changed, 0 insertions, 3953 deletions
diff --git a/asm/easy_chat.s b/asm/easy_chat.s deleted file mode 100644 index 50e707ac3..000000000 --- a/asm/easy_chat.s +++ /dev/null @@ -1,3953 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_811DADC -sub_811DADC: @ 811DADC - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0x1E - str r0, [sp] - movs r0, 0xA - str r0, [sp, 0x4] - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0xA - bl FillBgTilemapBufferRect_Palette0 - cmp r4, 0x16 - bls _0811DAFE - b _0811DC1A -_0811DAFE: - lsls r0, r4, 2 - ldr r1, =_0811DB0C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0811DB0C: - .4byte _0811DC1A - .4byte _0811DB68 - .4byte _0811DB70 - .4byte _0811DB78 - .4byte _0811DB80 - .4byte _0811DB88 - .4byte _0811DB90 - .4byte _0811DC00 - .4byte _0811DBF2 - .4byte _0811DBE4 - .4byte _0811DBD6 - .4byte _0811DB9E - .4byte _0811DBA6 - .4byte _0811DBAE - .4byte _0811DBB6 - .4byte _0811DBBE - .4byte _0811DBC6 - .4byte _0811DBCE - .4byte _0811DBD6 - .4byte _0811DBE4 - .4byte _0811DBF2 - .4byte _0811DC00 - .4byte _0811DC0E -_0811DB68: - movs r0, 0xB - movs r1, 0xE - movs r2, 0x3 - b _0811DB96 -_0811DB70: - movs r0, 0x9 - movs r1, 0xE - movs r2, 0x7 - b _0811DB96 -_0811DB78: - movs r0, 0x7 - movs r1, 0xE - movs r2, 0xB - b _0811DB96 -_0811DB80: - movs r0, 0x5 - movs r1, 0xE - movs r2, 0xF - b _0811DB96 -_0811DB88: - movs r0, 0x3 - movs r1, 0xE - movs r2, 0x13 - b _0811DB96 -_0811DB90: - movs r0, 0x1 - movs r1, 0xE - movs r2, 0x17 -_0811DB96: - movs r3, 0x2 - bl sub_811DC28 - b _0811DC1A -_0811DB9E: - movs r0, 0x1 - movs r1, 0xA - movs r2, 0x18 - b _0811DBDC -_0811DBA6: - movs r0, 0x1 - movs r1, 0xA - movs r2, 0x19 - b _0811DBDC -_0811DBAE: - movs r0, 0x1 - movs r1, 0xA - movs r2, 0x1A - b _0811DBDC -_0811DBB6: - movs r0, 0x1 - movs r1, 0xA - movs r2, 0x1B - b _0811DBDC -_0811DBBE: - movs r0, 0x1 - movs r1, 0xA - movs r2, 0x1C - b _0811DBDC -_0811DBC6: - movs r0, 0x1 - movs r1, 0xA - movs r2, 0x1D - b _0811DBDC -_0811DBCE: - movs r0, 0 - movs r1, 0xA - movs r2, 0x1E - b _0811DBDC -_0811DBD6: - movs r0, 0x1 - movs r1, 0xA - movs r2, 0x17 -_0811DBDC: - movs r3, 0xA - bl sub_811DC28 - b _0811DC1A -_0811DBE4: - movs r0, 0x1 - movs r1, 0xB - movs r2, 0x17 - movs r3, 0x8 - bl sub_811DC28 - b _0811DC1A -_0811DBF2: - movs r0, 0x1 - movs r1, 0xC - movs r2, 0x17 - movs r3, 0x6 - bl sub_811DC28 - b _0811DC1A -_0811DC00: - movs r0, 0x1 - movs r1, 0xD - movs r2, 0x17 - movs r3, 0x4 - bl sub_811DC28 - b _0811DC1A -_0811DC0E: - movs r0, 0x1 - movs r1, 0xE - movs r2, 0x17 - movs r3, 0x2 - bl sub_811DC28 -_0811DC1A: - movs r0, 0x1 - bl CopyBgTilemapBufferToVram - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_811DADC - - thumb_func_start sub_811DC28 -sub_811DC28: @ 811DC28 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r12, r0 - adds r7, r1, 0 - mov r9, r2 - mov r10, r3 - ldr r0, =gUnknown_0203A11C - ldr r0, [r0] - movs r1, 0xC0 - lsls r1, 2 - adds r6, r0, r1 - mov r0, r12 - add r0, r9 - subs r5, r0, 0x1 - adds r0, r7, r3 - subs r0, 0x1 - mov r8, r0 - mov r2, r12 - adds r3, r7, 0 - lsls r0, r3, 5 - adds r0, r2 - lsls r0, 1 - adds r0, r6 - ldr r4, =0x00004001 - adds r1, r4, 0 - strh r1, [r0] - adds r2, 0x1 - cmp r2, r5 - bge _0811DC84 - ldr r0, =0x00004002 - adds r4, r0, 0 - lsls r1, r2, 1 - lsls r0, r3, 6 - adds r0, r6 - adds r1, r0 - subs r2, r5, r2 -_0811DC78: - strh r4, [r1] - adds r1, 0x2 - subs r2, 0x1 - cmp r2, 0 - bne _0811DC78 - adds r2, r5, 0 -_0811DC84: - lsls r0, r3, 5 - adds r0, r2 - lsls r0, 1 - adds r0, r6 - ldr r2, =0x00004003 - adds r1, r2, 0 - strh r1, [r0] - adds r3, 0x1 - mov r4, r12 - adds r4, 0x1 - adds r0, r7, 0x1 - str r0, [sp, 0x4] - mov r1, r9 - subs r1, 0x2 - str r1, [sp] - movs r2, 0x2 - negs r2, r2 - add r10, r2 - cmp r3, r8 - bge _0811DCF4 - lsls r7, r4, 1 - mov r9, r7 -_0811DCB0: - lsls r0, r3, 5 - add r0, r12 - lsls r0, 1 - adds r0, r6 - ldr r2, =0x00004005 - adds r1, r2, 0 - strh r1, [r0] - adds r2, r4, 0 - adds r7, r3, 0x1 - cmp r4, r5 - bge _0811DCE0 - movs r0, 0x80 - lsls r0, 7 - adds r1, r0, 0 - lsls r0, r3, 6 - adds r0, r6 - add r0, r9 - subs r2, r5, r4 -_0811DCD4: - strh r1, [r0] - adds r0, 0x2 - subs r2, 0x1 - cmp r2, 0 - bne _0811DCD4 - adds r2, r5, 0 -_0811DCE0: - lsls r0, r3, 5 - adds r0, r2 - lsls r0, 1 - adds r0, r6 - ldr r2, =0x00004007 - adds r1, r2, 0 - strh r1, [r0] - adds r3, r7, 0 - cmp r3, r8 - blt _0811DCB0 -_0811DCF4: - lsls r0, r3, 5 - mov r7, r12 - adds r1, r0, r7 - lsls r1, 1 - adds r1, r6 - ldr r7, =0x00004009 - adds r2, r7, 0 - strh r2, [r1] - adds r2, r4, 0 - mov r12, r0 - cmp r4, r5 - bge _0811DD26 - ldr r0, =0x0000400a - adds r7, r0, 0 - lsls r1, r4, 1 - lsls r0, r3, 6 - adds r0, r6 - adds r0, r1, r0 - subs r2, r5, r4 -_0811DD1A: - strh r7, [r0] - adds r0, 0x2 - subs r2, 0x1 - cmp r2, 0 - bne _0811DD1A - adds r2, r5, 0 -_0811DD26: - mov r1, r12 - adds r0, r1, r2 - lsls r0, 1 - adds r0, r6 - ldr r2, =0x0000400b - adds r1, r2, 0 - strh r1, [r0] - lsls r0, r4, 27 - lsrs r0, 24 - ldr r3, [sp, 0x4] - lsls r1, r3, 27 - lsrs r1, 24 - ldr r4, [sp] - lsls r2, r4, 27 - lsrs r2, 24 - mov r7, r10 - lsls r3, r7, 27 - lsrs r3, 24 - bl sub_811DE5C - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811DC28 - - thumb_func_start sub_811DD84 -sub_811DD84: @ 811DD84 - push {lr} - movs r1, 0x80 - lsls r1, 4 - movs r0, 0x2 - movs r2, 0 - bl ChangeBgY - ldr r0, =gUnknown_0203A11C - ldr r0, [r0] - ldr r1, =0x000002ce - adds r0, r1 - movs r1, 0 - strh r1, [r0] - pop {r0} - bx r0 - .pool - thumb_func_end sub_811DD84 - - thumb_func_start sub_811DDAC -sub_811DDAC: @ 811DDAC - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r1, 24 - lsrs r5, r1, 24 - movs r0, 0x2 - bl GetBgY - adds r2, r0, 0 - ldr r0, =gUnknown_0203A11C - ldr r3, [r0] - ldr r0, =0x000002ce - adds r1, r3, r0 - ldrh r0, [r1] - adds r0, r4 - strh r0, [r1] - lsls r4, 20 - asrs r4, 16 - lsls r0, r4, 8 - adds r2, r0 - cmp r5, 0 - beq _0811DE00 - movs r1, 0xB4 - lsls r1, 2 - adds r0, r3, r1 - str r2, [r0] - movs r0, 0xB5 - lsls r0, 2 - adds r1, r3, r0 - lsls r0, r5, 8 - str r0, [r1] - cmp r4, 0 - bge _0811DE0A - negs r0, r0 - str r0, [r1] - b _0811DE0A - .pool -_0811DE00: - movs r0, 0x2 - adds r1, r2, 0 - movs r2, 0 - bl ChangeBgY -_0811DE0A: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_811DDAC - - thumb_func_start sub_811DE10 -sub_811DE10: @ 811DE10 - push {lr} - movs r0, 0x2 - bl GetBgY - ldr r1, =gUnknown_0203A11C - ldr r2, [r1] - movs r3, 0xB4 - lsls r3, 2 - adds r1, r2, r3 - ldr r1, [r1] - cmp r0, r1 - beq _0811DE40 - movs r1, 0xB5 - lsls r1, 2 - adds r0, r2, r1 - ldr r1, [r0] - movs r0, 0x2 - movs r2, 0x1 - bl ChangeBgY - movs r0, 0x1 - b _0811DE42 - .pool -_0811DE40: - movs r0, 0 -_0811DE42: - pop {r1} - bx r1 - thumb_func_end sub_811DE10 - - thumb_func_start sub_811DE48 -sub_811DE48: @ 811DE48 - ldr r0, =gUnknown_0203A11C - ldr r0, [r0] - ldr r1, =0x000002ce - adds r0, r1 - ldrh r0, [r0] - bx lr - .pool - thumb_func_end sub_811DE48 - - thumb_func_start sub_811DE5C -sub_811DE5C: @ 811DE5C - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - lsls r4, r0, 8 - adds r0, r2 - orrs r4, r0 - lsls r5, r1, 8 - adds r1, r3 - orrs r5, r1 - movs r0, 0x40 - adds r1, r4, 0 - bl SetGpuReg - movs r0, 0x44 - adds r1, r5, 0 - bl SetGpuReg - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_811DE5C - - thumb_func_start sub_811DE90 -sub_811DE90: @ 811DE90 - push {r4,r5,lr} - ldr r0, =gUnknown_08597CA0 - bl LoadSpriteSheets - ldr r0, =gUnknown_08597CC0 - bl LoadSpritePalettes - movs r5, 0 - ldr r4, =gUnknown_08597CE8 -_0811DEA2: - adds r0, r4, 0 - bl LoadCompressedSpriteSheet - adds r4, 0x8 - adds r5, 0x1 - cmp r5, 0x3 - bls _0811DEA2 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811DE90 - - thumb_func_start sub_811DEC4 -sub_811DEC4: @ 811DEC4 - push {lr} - bl sub_811BA68 - lsls r0, 24 - ldr r1, =gUnknown_08597C30 - lsrs r0, 22 - adds r0, r1 - ldrb r2, [r0] - lsls r1, r2, 27 - lsrs r1, 8 - lsrs r2, 5 - lsls r2, 19 - ldr r0, =gUnknown_08597D18 - movs r3, 0xD0 - lsls r3, 12 - adds r1, r3 - asrs r1, 16 - movs r3, 0x80 - lsls r3, 12 - adds r2, r3 - asrs r2, 16 - movs r3, 0x2 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_0203A11C - ldr r2, [r1] - movs r1, 0xB6 - lsls r1, 2 - adds r2, r1 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, =gSprites - adds r1, r0 - str r1, [r2] - movs r0, 0x1 - strh r0, [r1, 0x30] - pop {r0} - bx r0 - .pool - thumb_func_end sub_811DEC4 - - thumb_func_start sub_811DF28 -sub_811DF28: @ 811DF28 - push {lr} - adds r1, r0, 0 - movs r2, 0x30 - ldrsh r0, [r1, r2] - cmp r0, 0 - beq _0811DF56 - ldrh r0, [r1, 0x2E] - adds r0, 0x1 - strh r0, [r1, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2 - ble _0811DF56 - movs r0, 0 - strh r0, [r1, 0x2E] - ldrh r0, [r1, 0x24] - adds r0, 0x1 - strh r0, [r1, 0x24] - lsls r0, 16 - cmp r0, 0 - ble _0811DF56 - ldr r0, =0x0000fffa - strh r0, [r1, 0x24] -_0811DF56: - pop {r0} - bx r0 - .pool - thumb_func_end sub_811DF28 - - thumb_func_start sub_811DF60 -sub_811DF60: @ 811DF60 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r2, =gUnknown_0203A11C - ldr r2, [r2] - movs r3, 0xB6 - lsls r3, 2 - adds r2, r3 - ldr r3, [r2] - movs r4, 0 - strh r0, [r3, 0x20] - ldr r0, [r2] - strh r1, [r0, 0x22] - ldr r0, [r2] - strh r4, [r0, 0x24] - ldr r0, [r2] - strh r4, [r0, 0x2E] - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811DF60 - - thumb_func_start sub_811DF90 -sub_811DF90: @ 811DF90 - ldr r0, =gUnknown_0203A11C - ldr r1, [r0] - movs r0, 0xB6 - lsls r0, 2 - adds r1, r0 - ldr r0, [r1] - movs r2, 0 - strh r2, [r0, 0x2E] - ldr r0, [r1] - strh r2, [r0, 0x30] - ldr r0, [r1] - strh r2, [r0, 0x24] - bx lr - .pool - thumb_func_end sub_811DF90 - - thumb_func_start sub_811DFB0 -sub_811DFB0: @ 811DFB0 - ldr r0, =gUnknown_0203A11C - ldr r0, [r0] - movs r1, 0xB6 - lsls r1, 2 - adds r0, r1 - ldr r1, [r0] - movs r0, 0x1 - strh r0, [r1, 0x30] - bx lr - .pool - thumb_func_end sub_811DFB0 - - thumb_func_start sub_811DFC8 -sub_811DFC8: @ 811DFC8 - push {r4-r6,lr} - mov r6, r8 - push {r6} - ldr r6, =gUnknown_08597D68 - adds r0, r6, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x3 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r5, =gUnknown_0203A11C - ldr r2, [r5] - movs r1, 0xB7 - lsls r1, 2 - mov r8, r1 - add r2, r8 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r4, =gSprites - adds r1, r4 - str r1, [r2] - movs r0, 0x20 - strh r0, [r1, 0x24] - adds r0, r6, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x3 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r2, [r5] - movs r1, 0xB8 - lsls r1, 2 - adds r3, r2, r1 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - str r1, [r3] - ldr r0, =0x0000ffe0 - strh r0, [r1, 0x24] - add r2, r8 - ldr r1, [r2] - adds r1, 0x3F - ldrb r0, [r1] - movs r2, 0x1 - orrs r0, r2 - strb r0, [r1] - bl sub_811E088 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811DFC8 - - thumb_func_start sub_811E050 -sub_811E050: @ 811E050 - push {r4-r6,lr} - ldr r5, =gUnknown_0203A11C - ldr r0, [r5] - movs r4, 0xB7 - lsls r4, 2 - adds r0, r4 - ldr r0, [r0] - bl DestroySprite - ldr r0, [r5] - adds r4, r0, r4 - movs r6, 0 - str r6, [r4] - movs r4, 0xB8 - lsls r4, 2 - adds r0, r4 - ldr r0, [r0] - bl DestroySprite - ldr r0, [r5] - adds r0, r4 - str r6, [r0] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E050 - - thumb_func_start sub_811E088 -sub_811E088: @ 811E088 - push {r4,lr} - sub sp, 0x4 - ldr r0, =gUnknown_0203A11C - ldr r1, [r0] - movs r2, 0xB7 - lsls r2, 2 - adds r0, r1, r2 - ldr r0, [r0] - cmp r0, 0 - beq _0811E0E4 - adds r2, 0x4 - adds r0, r1, r2 - ldr r0, [r0] - cmp r0, 0 - beq _0811E0E4 - mov r4, sp - adds r4, 0x1 - mov r0, sp - adds r1, r4, 0 - bl sub_811BB9C - bl sub_811BBB0 - lsls r0, 24 - cmp r0, 0 - bne _0811E0D4 - mov r0, sp - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - movs r1, 0 - ldrsb r1, [r4, r1] - bl sub_811E0EC - b _0811E0E4 - .pool -_0811E0D4: - mov r0, sp - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - movs r1, 0 - ldrsb r1, [r4, r1] - bl sub_811E1A4 -_0811E0E4: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_811E088 - - thumb_func_start sub_811E0EC -sub_811E0EC: @ 811E0EC - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r1, 24 - lsrs r7, r1, 24 - lsls r0, 24 - asrs r5, r0, 24 - movs r0, 0x1 - negs r0, r0 - cmp r5, r0 - beq _0811E150 - ldr r0, =gUnknown_0203A11C - mov r8, r0 - ldr r0, [r0] - movs r4, 0xB7 - lsls r4, 2 - adds r0, r4 - ldr r0, [r0] - movs r1, 0 - bl StartSpriteAnim - mov r2, r8 - ldr r1, [r2] - adds r4, r1, r4 - ldr r2, [r4] - movs r0, 0x54 - muls r5, r0 - adds r5, 0x3A - strh r5, [r2, 0x20] - ldr r0, [r4] - lsls r4, r7, 24 - asrs r4, 20 - adds r4, 0x60 - strh r4, [r0, 0x22] - movs r6, 0xB8 - lsls r6, 2 - adds r1, r6 - ldr r0, [r1] - movs r1, 0 - bl StartSpriteAnim - mov r1, r8 - ldr r0, [r1] - adds r0, r6 - ldr r1, [r0] - strh r5, [r1, 0x20] - b _0811E192 - .pool -_0811E150: - ldr r6, =gUnknown_0203A11C - ldr r0, [r6] - movs r4, 0xB7 - lsls r4, 2 - adds r0, r4 - ldr r0, [r0] - movs r1, 0x1 - bl StartSpriteAnim - ldr r1, [r6] - adds r4, r1, r4 - ldr r0, [r4] - movs r2, 0xD8 - mov r8, r2 - mov r2, r8 - strh r2, [r0, 0x20] - ldr r0, [r4] - lsls r4, r7, 24 - asrs r4, 20 - adds r4, 0x70 - strh r4, [r0, 0x22] - movs r5, 0xB8 - lsls r5, 2 - adds r1, r5 - ldr r0, [r1] - movs r1, 0x1 - bl StartSpriteAnim - ldr r0, [r6] - adds r0, r5 - ldr r1, [r0] - mov r2, r8 - strh r2, [r1, 0x20] -_0811E192: - ldr r0, [r0] - strh r4, [r0, 0x22] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E0EC - - thumb_func_start sub_811E1A4 -sub_811E1A4: @ 811E1A4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 24 - lsls r1, 24 - lsrs r5, r1, 24 - lsrs r4, r0, 24 - asrs r2, r0, 24 - movs r0, 0x1 - negs r0, r0 - cmp r2, r0 - beq _0811E234 - lsls r0, r5, 24 - asrs r1, r0, 24 - lsls r0, r1, 4 - adds r0, 0x60 - mov r8, r0 - movs r7, 0x20 - cmp r2, 0x6 - bne _0811E1D6 - cmp r1, 0 - bne _0811E1D6 - movs r7, 0x9E - movs r6, 0x2 - b _0811E1EC -_0811E1D6: - ldr r3, =gUnknown_08597D08 - lsls r1, r4, 24 - lsrs r0, r1, 24 - movs r2, 0 - cmp r0, 0x6 - bhi _0811E1E4 - asrs r2, r1, 24 -_0811E1E4: - adds r0, r2, r3 - ldrb r0, [r0] - adds r7, r0 - movs r6, 0x3 -_0811E1EC: - ldr r5, =gUnknown_0203A11C - ldr r0, [r5] - movs r4, 0xB7 - lsls r4, 2 - adds r0, r4 - ldr r0, [r0] - adds r1, r6, 0 - bl StartSpriteAnim - ldr r1, [r5] - adds r4, r1, r4 - ldr r0, [r4] - strh r7, [r0, 0x20] - ldr r0, [r4] - mov r2, r8 - strh r2, [r0, 0x22] - movs r4, 0xB8 - lsls r4, 2 - adds r1, r4 - ldr r0, [r1] - adds r1, r6, 0 - bl StartSpriteAnim - ldr r0, [r5] - adds r0, r4 - ldr r1, [r0] - strh r7, [r1, 0x20] - ldr r0, [r0] - mov r1, r8 - strh r1, [r0, 0x22] - b _0811E27A - .pool -_0811E234: - ldr r6, =gUnknown_0203A11C - ldr r0, [r6] - movs r4, 0xB7 - lsls r4, 2 - adds r0, r4 - ldr r0, [r0] - movs r1, 0x1 - bl StartSpriteAnim - ldr r1, [r6] - adds r4, r1, r4 - ldr r0, [r4] - movs r2, 0xD8 - mov r8, r2 - mov r2, r8 - strh r2, [r0, 0x20] - ldr r0, [r4] - lsls r4, r5, 24 - asrs r4, 20 - adds r4, 0x70 - strh r4, [r0, 0x22] - movs r5, 0xB8 - lsls r5, 2 - adds r1, r5 - ldr r0, [r1] - movs r1, 0x1 - bl StartSpriteAnim - ldr r0, [r6] - adds r0, r5 - ldr r1, [r0] - mov r2, r8 - strh r2, [r1, 0x20] - ldr r0, [r0] - strh r4, [r0, 0x22] -_0811E27A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E1A4 - - thumb_func_start sub_811E288 -sub_811E288: @ 811E288 - push {lr} - ldr r0, =gUnknown_08597D18 - movs r1, 0 - movs r2, 0 - movs r3, 0x4 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r1, =gUnknown_0203A11C - ldr r2, [r1] - movs r1, 0xB9 - lsls r1, 2 - adds r2, r1 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, =gSprites - adds r1, r0 - str r1, [r2] - ldr r0, =sub_811E2DC - str r0, [r1, 0x1C] - ldrb r2, [r1, 0x5] - movs r0, 0xD - negs r0, r0 - ands r0, r2 - movs r2, 0x8 - orrs r0, r2 - strb r0, [r1, 0x5] - bl sub_811E30C - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E288 - - thumb_func_start sub_811E2DC -sub_811E2DC: @ 811E2DC - push {lr} - adds r1, r0, 0 - ldrh r0, [r1, 0x2E] - adds r0, 0x1 - strh r0, [r1, 0x2E] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x2 - ble _0811E302 - movs r0, 0 - strh r0, [r1, 0x2E] - ldrh r0, [r1, 0x24] - adds r0, 0x1 - strh r0, [r1, 0x24] - lsls r0, 16 - cmp r0, 0 - ble _0811E302 - ldr r0, =0x0000fffa - strh r0, [r1, 0x24] -_0811E302: - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E2DC - - thumb_func_start sub_811E30C -sub_811E30C: @ 811E30C - push {r4,lr} - sub sp, 0x4 - mov r4, sp - adds r4, 0x1 - mov r0, sp - adds r1, r4, 0 - bl sub_811BBC8 - mov r0, sp - movs r1, 0 - ldrsb r1, [r0, r1] - movs r0, 0xD - muls r0, r1 - lsls r0, 27 - movs r1, 0 - ldrsb r1, [r4, r1] - lsls r1, 28 - movs r2, 0xE0 - lsls r2, 21 - adds r0, r2 - lsrs r0, 24 - movs r2, 0xC0 - lsls r2, 23 - adds r1, r2 - lsrs r1, 24 - bl sub_811E34C - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_811E30C - - thumb_func_start sub_811E34C -sub_811E34C: @ 811E34C - push {r4,lr} - lsls r0, 24 - lsrs r3, r0, 24 - lsls r1, 24 - lsrs r4, r1, 24 - ldr r0, =gUnknown_0203A11C - ldr r0, [r0] - movs r1, 0xB9 - lsls r1, 2 - adds r2, r0, r1 - ldr r0, [r2] - cmp r0, 0 - beq _0811E376 - movs r1, 0 - strh r3, [r0, 0x20] - ldr r0, [r2] - strh r4, [r0, 0x22] - ldr r0, [r2] - strh r1, [r0, 0x24] - ldr r0, [r2] - strh r1, [r0, 0x2E] -_0811E376: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E34C - - thumb_func_start sub_811E380 -sub_811E380: @ 811E380 - push {r4,lr} - ldr r4, =gUnknown_0203A11C - ldr r0, [r4] - movs r1, 0xB9 - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - beq _0811E3A2 - bl DestroySprite - ldr r0, [r4] - movs r1, 0xB9 - lsls r1, 2 - adds r0, r1 - movs r1, 0 - str r1, [r0] -_0811E3A2: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E380 - - thumb_func_start sub_811E3AC -sub_811E3AC: @ 811E3AC - push {r4-r6,lr} - ldr r0, =gUnknown_08597DF0 - movs r1, 0xD0 - movs r2, 0x80 - movs r3, 0x6 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r5, =gUnknown_0203A11C - ldr r2, [r5] - movs r1, 0xBA - lsls r1, 2 - adds r2, r1 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r4, =gSprites - adds r1, r4 - str r1, [r2] - movs r6, 0 - ldr r0, =0x0000ffc0 - strh r0, [r1, 0x24] - ldr r0, =gUnknown_08597DD0 - movs r1, 0xD0 - movs r2, 0x50 - movs r3, 0x5 - bl CreateSprite - lsls r0, 24 - lsrs r0, 24 - ldr r2, [r5] - movs r1, 0xBB - lsls r1, 2 - adds r3, r2, r1 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r4 - str r1, [r3] - strb r6, [r2, 0x9] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E3AC - - thumb_func_start sub_811E418 -sub_811E418: @ 811E418 - push {r4,lr} - ldr r4, =gUnknown_0203A11C - ldr r2, [r4] - ldrb r3, [r2, 0x9] - cmp r3, 0 - beq _0811E430 - cmp r3, 0x1 - beq _0811E488 - movs r0, 0 - b _0811E4A6 - .pool -_0811E430: - movs r0, 0xBA - lsls r0, 2 - adds r2, r0 - ldr r1, [r2] - ldrh r0, [r1, 0x24] - adds r0, 0x8 - strh r0, [r1, 0x24] - ldr r2, [r2] - movs r1, 0x24 - ldrsh r0, [r2, r1] - cmp r0, 0 - blt _0811E4A4 - strh r3, [r2, 0x24] - bl sub_811BBB0 - lsls r0, 24 - cmp r0, 0 - bne _0811E466 - ldr r0, [r4] - movs r1, 0xBB - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x1 - bl StartSpriteAnim - b _0811E476 -_0811E466: - ldr r0, [r4] - movs r1, 0xBB - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x2 - bl StartSpriteAnim -_0811E476: - ldr r0, =gUnknown_0203A11C - ldr r1, [r0] - ldrb r0, [r1, 0x9] - adds r0, 0x1 - strb r0, [r1, 0x9] - b _0811E4A4 - .pool -_0811E488: - movs r1, 0xBB - lsls r1, 2 - adds r0, r2, r1 - ldr r0, [r0] - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0811E4A4 - movs r0, 0x2 - strb r0, [r2, 0x9] - movs r0, 0 - b _0811E4A6 -_0811E4A4: - movs r0, 0x1 -_0811E4A6: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_811E418 - - thumb_func_start sub_811E4AC -sub_811E4AC: @ 811E4AC - push {lr} - ldr r2, =gUnknown_0203A11C - ldr r1, [r2] - movs r0, 0 - strb r0, [r1, 0x9] - ldr r0, [r2] - movs r1, 0xBB - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x3 - bl StartSpriteAnim - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E4AC - - thumb_func_start sub_811E4D0 -sub_811E4D0: @ 811E4D0 - push {r4-r6,lr} - ldr r5, =gUnknown_0203A11C - ldr r3, [r5] - ldrb r0, [r3, 0x9] - cmp r0, 0 - beq _0811E4E8 - cmp r0, 0x1 - beq _0811E502 - movs r0, 0 - b _0811E554 - .pool -_0811E4E8: - movs r1, 0xBB - lsls r1, 2 - adds r0, r3, r1 - ldr r0, [r0] - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0811E552 - movs r0, 0x1 - strb r0, [r3, 0x9] - b _0811E552 -_0811E502: - movs r0, 0xBA - lsls r0, 2 - adds r2, r3, r0 - ldr r1, [r2] - ldrh r0, [r1, 0x24] - subs r0, 0x8 - movs r6, 0 - strh r0, [r1, 0x24] - ldr r0, [r2] - movs r2, 0x24 - ldrsh r1, [r0, r2] - movs r0, 0x40 - negs r0, r0 - cmp r1, r0 - bgt _0811E552 - movs r4, 0xBB - lsls r4, 2 - adds r0, r3, r4 - ldr r0, [r0] - bl DestroySprite - ldr r0, [r5] - movs r1, 0xBA - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - bl DestroySprite - ldr r1, [r5] - adds r4, r1, r4 - str r6, [r4] - movs r2, 0xBA - lsls r2, 2 - adds r0, r1, r2 - str r6, [r0] - ldrb r0, [r1, 0x9] - adds r0, 0x1 - strb r0, [r1, 0x9] - movs r0, 0 - b _0811E554 -_0811E552: - movs r0, 0x1 -_0811E554: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_811E4D0 - - thumb_func_start sub_811E55C -sub_811E55C: @ 811E55C - push {lr} - ldr r0, =gUnknown_0203A11C - ldr r0, [r0] - movs r1, 0xBB - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x4 - bl StartSpriteAnim - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E55C - - thumb_func_start sub_811E578 -sub_811E578: @ 811E578 - push {lr} - bl sub_811BBB0 - lsls r0, 24 - cmp r0, 0 - bne _0811E59C - ldr r0, =gUnknown_0203A11C - ldr r0, [r0] - movs r1, 0xBB - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x1 - bl StartSpriteAnim - b _0811E5AE - .pool -_0811E59C: - ldr r0, =gUnknown_0203A11C - ldr r0, [r0] - movs r1, 0xBB - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x2 - bl StartSpriteAnim -_0811E5AE: - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E578 - - thumb_func_start sub_811E5B8 -sub_811E5B8: @ 811E5B8 - ldr r0, =gUnknown_0203A11C - ldr r0, [r0] - movs r1, 0xBB - lsls r1, 2 - adds r0, r1 - ldr r0, [r0] - adds r0, 0x3F - ldrb r1, [r0] - lsrs r1, 4 - movs r0, 0x1 - bics r0, r1 - bx lr - .pool - thumb_func_end sub_811E5B8 - - thumb_func_start sub_811E5D4 -sub_811E5D4: @ 811E5D4 - push {r4,lr} - ldr r4, =gUnknown_08597E48 - adds r0, r4, 0 - movs r1, 0x60 - movs r2, 0x50 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _0811E602 - ldr r0, =gUnknown_0203A11C - ldr r2, [r0] - movs r0, 0xBC - lsls r0, 2 - adds r2, r0 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - str r0, [r2] -_0811E602: - adds r0, r4, 0 - movs r1, 0x60 - movs r2, 0x9C - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _0811E636 - ldr r0, =gUnknown_0203A11C - ldr r2, [r0] - movs r0, 0xBD - lsls r0, 2 - adds r2, r0 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - str r0, [r2] - adds r0, 0x3F - ldrb r1, [r0] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0] -_0811E636: - bl sub_811E6B0 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E5D4 - - thumb_func_start sub_811E64C -sub_811E64C: @ 811E64C - push {r4-r6,lr} - bl sub_811BBF8 - ldr r6, =gUnknown_0203A11C - ldr r1, [r6] - movs r2, 0xBC - lsls r2, 2 - adds r1, r2 - ldr r1, [r1] - movs r2, 0 - cmp r0, 0 - bne _0811E666 - movs r2, 0x1 -_0811E666: - adds r3, r1, 0 - adds r3, 0x3E - movs r4, 0x1 - lsls r2, 2 - ldrb r1, [r3] - movs r5, 0x5 - negs r5, r5 - adds r0, r5, 0 - ands r0, r1 - orrs r0, r2 - strb r0, [r3] - bl sub_811BC2C - ldr r1, [r6] - movs r2, 0xBD - lsls r2, 2 - adds r1, r2 - ldr r1, [r1] - movs r2, 0 - cmp r0, 0 - bne _0811E692 - movs r2, 0x1 -_0811E692: - adds r3, r1, 0 - adds r3, 0x3E - adds r1, r4, 0 - ands r1, r2 - lsls r1, 2 - ldrb r2, [r3] - adds r0, r5, 0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E64C - - thumb_func_start sub_811E6B0 -sub_811E6B0: @ 811E6B0 - ldr r3, =gUnknown_0203A11C - ldr r0, [r3] - movs r1, 0xBC - lsls r1, 2 - adds r0, r1 - ldr r1, [r0] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1] - ldr r0, [r3] - movs r1, 0xBD - lsls r1, 2 - adds r0, r1 - ldr r1, [r0] - adds r1, 0x3E - ldrb r0, [r1] - orrs r0, r2 - strb r0, [r1] - bx lr - .pool - thumb_func_end sub_811E6B0 - - thumb_func_start sub_811E6E0 -sub_811E6E0: @ 811E6E0 - push {lr} - cmp r0, 0 - bne _0811E6FC - ldr r0, =gUnknown_0203A11C - ldr r2, [r0] - movs r1, 0xBC - lsls r1, 2 - adds r0, r2, r1 - ldr r0, [r0] - movs r1, 0x60 - b _0811E70A - .pool -_0811E6FC: - ldr r0, =gUnknown_0203A11C - ldr r2, [r0] - movs r1, 0xBC - lsls r1, 2 - adds r0, r2, r1 - ldr r0, [r0] - movs r1, 0x78 -_0811E70A: - strh r1, [r0, 0x20] - movs r3, 0xBD - lsls r3, 2 - adds r0, r2, r3 - ldr r0, [r0] - strh r1, [r0, 0x20] - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E6E0 - - thumb_func_start sub_811E720 -sub_811E720: @ 811E720 - push {r4,lr} - ldr r4, =gUnknown_08597E30 - adds r0, r4, 0 - movs r1, 0xDC - movs r2, 0x54 - movs r3, 0x1 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _0811E74E - ldr r0, =gUnknown_0203A11C - ldr r2, [r0] - movs r0, 0xBE - lsls r0, 2 - adds r2, r0 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - str r0, [r2] -_0811E74E: - adds r0, r4, 0 - movs r1, 0xDC - movs r2, 0x9C - movs r3, 0x1 - bl CreateSprite - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x40 - beq _0811E77E - ldr r0, =gUnknown_0203A11C - ldr r2, [r0] - movs r0, 0xBF - lsls r0, 2 - adds r2, r0 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, =gSprites - adds r0, r1 - str r0, [r2] - movs r1, 0x1 - bl StartSpriteAnim -_0811E77E: - bl sub_811E7F8 - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E720 - - thumb_func_start sub_811E794 -sub_811E794: @ 811E794 - push {r4-r6,lr} - bl sub_811BBF8 - ldr r6, =gUnknown_0203A11C - ldr r1, [r6] - movs r2, 0xBE - lsls r2, 2 - adds r1, r2 - ldr r1, [r1] - movs r2, 0 - cmp r0, 0 - bne _0811E7AE - movs r2, 0x1 -_0811E7AE: - adds r3, r1, 0 - adds r3, 0x3E - movs r4, 0x1 - lsls r2, 2 - ldrb r1, [r3] - movs r5, 0x5 - negs r5, r5 - adds r0, r5, 0 - ands r0, r1 - orrs r0, r2 - strb r0, [r3] - bl sub_811BC2C - ldr r1, [r6] - movs r2, 0xBF - lsls r2, 2 - adds r1, r2 - ldr r1, [r1] - movs r2, 0 - cmp r0, 0 - bne _0811E7DA - movs r2, 0x1 -_0811E7DA: - adds r3, r1, 0 - adds r3, 0x3E - adds r1, r4, 0 - ands r1, r2 - lsls r1, 2 - ldrb r2, [r3] - adds r0, r5, 0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] - pop {r4-r6} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E794 - - thumb_func_start sub_811E7F8 -sub_811E7F8: @ 811E7F8 - ldr r3, =gUnknown_0203A11C - ldr r0, [r3] - movs r1, 0xBE - lsls r1, 2 - adds r0, r1 - ldr r1, [r0] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x4 - orrs r0, r2 - strb r0, [r1] - ldr r0, [r3] - movs r1, 0xBF - lsls r1, 2 - adds r0, r1 - ldr r1, [r0] - adds r1, 0x3E - ldrb r0, [r1] - orrs r0, r2 - strb r0, [r1] - bx lr - .pool - thumb_func_end sub_811E7F8 - - thumb_func_start sub_811E828 -sub_811E828: @ 811E828 - push {r4,r5,lr} - sub sp, 0x4 - bl sub_811BCBC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0811E84C - cmp r0, 0x1 - bgt _0811E842 - cmp r0, 0 - beq _0811E848 - b _0811E8D0 -_0811E842: - cmp r0, 0x2 - beq _0811E850 - b _0811E8D0 -_0811E848: - movs r4, 0x43 - b _0811E852 -_0811E84C: - movs r4, 0x44 - b _0811E852 -_0811E850: - movs r4, 0x7 -_0811E852: - bl sub_811BA68 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bne _0811E8D0 - adds r0, r4, 0 - ldr r5, =SpriteCallbackDummy - movs r4, 0 - str r4, [sp] - adds r1, r5, 0 - movs r2, 0x4C - movs r3, 0x28 - bl AddPseudoEventObject - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x40 - beq _0811E892 - ldr r1, =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r2, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r2 - strb r1, [r0, 0x5] - movs r1, 0x2 - bl StartSpriteAnim -_0811E892: - ldr r0, =gSaveBlock2Ptr - ldr r0, [r0] - ldrb r0, [r0, 0x8] - movs r1, 0x69 - cmp r0, 0 - bne _0811E8A0 - movs r1, 0x64 -_0811E8A0: - str r4, [sp] - adds r0, r1, 0 - adds r1, r5, 0 - movs r2, 0x34 - movs r3, 0x28 - bl AddPseudoEventObject - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x40 - beq _0811E8D0 - ldr r1, =gSprites - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r2, [r0, 0x5] - movs r1, 0xD - negs r1, r1 - ands r1, r2 - strb r1, [r0, 0x5] - movs r1, 0x3 - bl StartSpriteAnim -_0811E8D0: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E828 - - thumb_func_start sub_811E8E4 -sub_811E8E4: @ 811E8E4 - push {lr} - bl sub_811BA68 - lsls r0, 24 - ldr r1, =gUnknown_08597C30 - lsrs r0, 22 - adds r0, r1 - ldrb r0, [r0, 0x3] - cmp r0, 0x1 - beq _0811E90E - cmp r0, 0x1 - bgt _0811E908 - cmp r0, 0 - beq _0811E916 - b _0811E91A - .pool -_0811E908: - cmp r0, 0x2 - beq _0811E912 - b _0811E91A -_0811E90E: - movs r0, 0x1 - b _0811E91C -_0811E912: - movs r0, 0x2 - b _0811E91C -_0811E916: - movs r0, 0 - b _0811E91C -_0811E91A: - movs r0, 0x3 -_0811E91C: - pop {r1} - bx r1 - thumb_func_end sub_811E8E4 - - thumb_func_start sub_811E920 -sub_811E920: @ 811E920 - push {r4,lr} - adds r4, r0, 0 - bl sub_811E8E4 - adds r1, r0, 0 - cmp r1, 0x2 - ble _0811E932 - movs r0, 0 - b _0811E93E -_0811E932: - ldr r0, =gUnknown_08597E60 - lsls r1, 2 - adds r1, r4, r1 - adds r1, r0 - ldrb r0, [r1] - adds r0, 0x4 -_0811E93E: - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_811E920 - - thumb_func_start sub_811E948 -sub_811E948: @ 811E948 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - bl sub_811E8E4 - mov r8, r0 - cmp r0, 0x3 - beq _0811E9FA - ldr r3, =0xffffff00 - ldr r0, [sp, 0xC] - ands r0, r3 - movs r1, 0x3 - orrs r0, r1 - ldr r2, =0xffff00ff - ands r0, r2 - adds r1, 0xFD - orrs r0, r1 - ldr r1, =0xff00ffff - ands r0, r1 - movs r1, 0xB0 - lsls r1, 12 - orrs r0, r1 - ldr r1, =0x00ffffff - ands r0, r1 - movs r1, 0xE0 - lsls r1, 21 - orrs r0, r1 - str r0, [sp, 0xC] - ldr r0, [sp, 0x10] - ands r0, r3 - movs r1, 0x2 - orrs r0, r1 - ands r0, r2 - movs r1, 0xB0 - lsls r1, 4 - orrs r0, r1 - ldr r1, =0x0000ffff - ands r0, r1 - movs r1, 0xD0 - lsls r1, 14 - orrs r0, r1 - str r0, [sp, 0x10] - add r0, sp, 0xC - bl AddWindow - lsls r0, 16 - lsrs r7, r0, 16 - lsls r4, r7, 24 - lsrs r0, r4, 24 - movs r1, 0x11 - bl FillWindowPixelBuffer - movs r6, 0 - mov r0, r8 - lsls r1, r0, 4 - ldr r0, =gUnknown_08597E6C - adds r5, r1, r0 - ldr r1, =gUnknown_08597E60 - mov r10, r1 - mov r9, r4 -_0811E9C6: - ldr r2, [r5] - lsls r4, r7, 24 - cmp r2, 0 - beq _0811E9EC - mov r1, r8 - lsls r0, r1, 2 - adds r0, r6, r0 - add r0, r10 - ldrb r3, [r0] - movs r0, 0x1 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - str r0, [sp, 0x8] - mov r1, r9 - lsrs r0, r1, 24 - movs r1, 0x1 - bl sub_811D028 -_0811E9EC: - adds r5, 0x4 - adds r6, 0x1 - cmp r6, 0x3 - ble _0811E9C6 - lsrs r0, r4, 24 - bl PutWindowTilemap -_0811E9FA: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811E948 - - thumb_func_start sub_811EA28 -sub_811EA28: @ 811EA28 - push {lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - cmp r0, 0x14 - beq _0811EA4E - cmp r0, 0x14 - bgt _0811EA48 - cmp r0, 0x11 - blt _0811EA66 - ldr r0, =0x00000864 @ = FLAG_SYS_GAME_CLEAR - bl FlagGet - b _0811EA60 - .pool -_0811EA48: - cmp r1, 0x15 - beq _0811EA5C - b _0811EA66 -_0811EA4E: - ldr r0, =0x00000866 - bl FlagGet - b _0811EA60 - .pool -_0811EA5C: - bl sub_811F0F8 -_0811EA60: - lsls r0, 24 - lsrs r0, 24 - b _0811EA68 -_0811EA66: - movs r0, 0x1 -_0811EA68: - pop {r1} - bx r1 - thumb_func_end sub_811EA28 - - thumb_func_start EasyChat_GetNumWordsInGroup -EasyChat_GetNumWordsInGroup: @ 811EA6C - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - adds r4, r0, 0 - cmp r0, 0 - bne _0811EA84 - movs r0, 0 - bl GetNationalPokedexCount - lsls r0, 16 - lsrs r0, 16 - b _0811EA9A -_0811EA84: - bl sub_811EA28 - lsls r0, 24 - cmp r0, 0 - bne _0811EA92 - movs r0, 0 - b _0811EA9A -_0811EA92: - ldr r0, =gEasyChatGroups - lsls r1, r4, 3 - adds r1, r0 - ldrh r0, [r1, 0x6] -_0811EA9A: - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end EasyChat_GetNumWordsInGroup - - thumb_func_start sub_811EAA4 -sub_811EAA4: @ 811EAA4 - push {r4,r5,lr} - lsls r2, r0, 16 - lsrs r1, r2, 16 - ldr r0, =0x0000ffff - cmp r1, r0 - beq _0811EB04 - lsrs r3, r2, 25 - ldr r5, =0x000001ff - ands r5, r1 - cmp r3, 0x15 - bhi _0811EB08 - ldr r0, =gEasyChatGroups - lsls r2, r3, 3 - adds r1, r2, r0 - ldrh r4, [r1, 0x4] - cmp r3, 0x13 - bgt _0811EADC - cmp r3, 0x12 - bge _0811EAE0 - cmp r3, 0 - beq _0811EAE0 - b _0811EB00 - .pool -_0811EADC: - cmp r3, 0x15 - bne _0811EB00 -_0811EAE0: - adds r0, r2, r0 - ldr r2, [r0] - movs r1, 0 - cmp r1, r4 - bcs _0811EB08 -_0811EAEA: - lsls r0, r1, 1 - adds r0, r2 - ldrh r0, [r0] - cmp r5, r0 - beq _0811EB04 - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, r4 - bcc _0811EAEA - b _0811EB08 -_0811EB00: - cmp r5, r4 - bcs _0811EB08 -_0811EB04: - movs r0, 0 - b _0811EB0A -_0811EB08: - movs r0, 0x1 -_0811EB0A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_811EAA4 - - thumb_func_start ECWord_CheckIfOutsideOfValidRange -ECWord_CheckIfOutsideOfValidRange: @ 811EB10 - push {lr} - lsls r0, 16 - lsrs r2, r0, 25 - lsls r0, 7 - lsrs r3, r0, 23 - cmp r2, 0x15 - bhi _0811EB5C - cmp r2, 0x13 - bgt _0811EB2C - cmp r2, 0x12 - bge _0811EB3C - cmp r2, 0 - beq _0811EB30 - b _0811EB48 -_0811EB2C: - cmp r2, 0x15 - bne _0811EB48 -_0811EB30: - ldr r0, =gUnknown_085F5490 - ldrh r0, [r0] - b _0811EB50 - .pool -_0811EB3C: - ldr r0, =gUnknown_085FA1D4 - ldrh r0, [r0] - b _0811EB50 - .pool -_0811EB48: - ldr r1, =gEasyChatGroups - lsls r0, r2, 3 - adds r0, r1 - ldrh r0, [r0, 0x4] -_0811EB50: - cmp r0, r3 - bls _0811EB5C - movs r0, 0 - b _0811EB5E - .pool -_0811EB5C: - movs r0, 0x1 -_0811EB5E: - pop {r1} - bx r1 - thumb_func_end ECWord_CheckIfOutsideOfValidRange - - thumb_func_start GetEasyChatWord -@ char *GetEasyChatWord(u8 groupId, u16 wordId) -GetEasyChatWord: @ 811EB64 - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r2, r1, 16 - cmp r0, 0x13 - bgt _0811EB7C - cmp r0, 0x12 - bge _0811EB90 - cmp r0, 0 - beq _0811EB80 - b _0811EBA0 -_0811EB7C: - cmp r0, 0x15 - bne _0811EBA0 -_0811EB80: - movs r0, 0xB - muls r0, r2 - ldr r1, =gSpeciesNames - adds r0, r1 - b _0811EBB2 - .pool -_0811EB90: - movs r0, 0xD - muls r0, r2 - ldr r1, =gMoveNames - adds r0, r1 - b _0811EBB2 - .pool -_0811EBA0: - ldr r1, =gEasyChatGroups - lsls r0, 3 - adds r0, r1 - ldr r1, [r0] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] -_0811EBB2: - pop {r1} - bx r1 - .pool - thumb_func_end GetEasyChatWord - - thumb_func_start CopyEasyChatWord -@ char *CopyEasyChatWord(char *dest, u16 groupIdWordIdPair) -CopyEasyChatWord: @ 811EBBC - push {r4-r6,lr} - adds r5, r0, 0 - lsls r6, r1, 16 - lsrs r0, r6, 16 - adds r4, r0, 0 - bl sub_811EAA4 - lsls r0, 24 - cmp r0, 0 - beq _0811EBD8 - ldr r1, =gText_ThreeQuestionMarks - b _0811EBEA - .pool -_0811EBD8: - ldr r0, =0x0000ffff - cmp r4, r0 - beq _0811EBFC - ldr r1, =0x000001ff - ands r1, r4 - lsrs r0, r6, 25 - bl GetEasyChatWord - adds r1, r0, 0 -_0811EBEA: - adds r0, r5, 0 - bl StringCopy - b _0811EC02 - .pool -_0811EBFC: - movs r0, 0xFF - strb r0, [r5] - adds r0, r5, 0 -_0811EC02: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end CopyEasyChatWord - - thumb_func_start ConvertEasyChatWordsToString -ConvertEasyChatWordsToString: @ 811EC08 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 16 - lsls r3, 16 - lsrs r3, 16 - mov r9, r3 - ldr r0, =0xffff0000 - adds r2, r0 - lsrs r7, r2, 16 - movs r0, 0 - cmp r0, r9 - bcs _0811EC78 -_0811EC2A: - movs r6, 0 - adds r0, 0x1 - mov r8, r0 - cmp r6, r7 - bcs _0811EC5C - ldr r2, =0x0000ffff -_0811EC36: - ldrh r1, [r5] - adds r0, r4, 0 - str r2, [sp] - bl CopyEasyChatWord - adds r4, r0, 0 - ldrh r0, [r5] - ldr r2, [sp] - cmp r0, r2 - beq _0811EC50 - movs r0, 0 - strb r0, [r4] - adds r4, 0x1 -_0811EC50: - adds r5, 0x2 - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, r7 - bcc _0811EC36 -_0811EC5C: - ldrh r1, [r5] - adds r5, 0x2 - adds r0, r4, 0 - bl CopyEasyChatWord - adds r4, r0, 0 - movs r0, 0xFE - strb r0, [r4] - adds r4, 0x1 - mov r1, r8 - lsls r0, r1, 16 - lsrs r0, 16 - cmp r0, r9 - bcc _0811EC2A -_0811EC78: - subs r4, 0x1 - movs r0, 0xFF - strb r0, [r4] - adds r0, r4, 0 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end ConvertEasyChatWordsToString - - thumb_func_start sub_811EC98 -sub_811EC98: @ 811EC98 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 16 - lsrs r2, 16 - mov r8, r2 - lsls r3, 16 - lsrs r3, 16 - str r3, [sp] - mov r7, r8 - movs r0, 0 - str r0, [sp, 0x4] - subs r0, r7, 0x1 - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - movs r0, 0 - cmp r0, r3 - bcs _0811ED62 -_0811ECC8: - adds r3, r5, 0 - movs r2, 0 - movs r1, 0 - adds r0, 0x1 - mov r10, r0 - cmp r2, r7 - bcs _0811ECEE - ldr r6, =0x0000ffff -_0811ECD8: - lsls r0, r1, 1 - adds r0, r3 - ldrh r0, [r0] - cmp r0, r6 - beq _0811ECE4 - movs r2, 0x1 -_0811ECE4: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, r7 - bcc _0811ECD8 -_0811ECEE: - cmp r2, 0 - bne _0811ECFC - lsls r0, r7, 1 - adds r5, r0 - b _0811ED56 - .pool -_0811ECFC: - movs r6, 0 - ldr r1, [sp, 0x4] - adds r1, 0x1 - mov r9, r1 - cmp r6, r8 - bcs _0811ED30 - ldr r2, =0x0000ffff -_0811ED0A: - ldrh r1, [r5] - adds r0, r4, 0 - str r2, [sp, 0x8] - bl CopyEasyChatWord - adds r4, r0, 0 - ldrh r0, [r5] - ldr r2, [sp, 0x8] - cmp r0, r2 - beq _0811ED24 - movs r0, 0 - strb r0, [r4] - adds r4, 0x1 -_0811ED24: - adds r5, 0x2 - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, r8 - bcc _0811ED0A -_0811ED30: - ldrh r1, [r5] - adds r5, 0x2 - adds r0, r4, 0 - bl CopyEasyChatWord - adds r4, r0, 0 - ldr r0, [sp, 0x4] - cmp r0, 0 - bne _0811ED4C - movs r0, 0xFE - b _0811ED4E - .pool -_0811ED4C: - movs r0, 0xFA -_0811ED4E: - strb r0, [r4] - adds r4, 0x1 - mov r1, r9 - str r1, [sp, 0x4] -_0811ED56: - mov r1, r10 - lsls r0, r1, 16 - lsrs r0, 16 - ldr r1, [sp] - cmp r0, r1 - bcc _0811ECC8 -_0811ED62: - subs r4, 0x1 - movs r0, 0xFF - strb r0, [r4] - adds r0, r4, 0 - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_811EC98 - - thumb_func_start sub_811ED7C -sub_811ED7C: @ 811ED7C - push {r4,r5,lr} - lsls r5, r0, 16 - lsrs r0, r5, 16 - adds r4, r0, 0 - ldr r0, =0x0000ffff - cmp r4, r0 - bne _0811ED94 - movs r0, 0 - b _0811EDBA - .pool -_0811ED94: - adds r0, r4, 0 - bl sub_811EAA4 - lsls r0, 24 - cmp r0, 0 - bne _0811EDB0 - ldr r1, =0x000001ff - ands r1, r4 - lsrs r0, r5, 25 - bl GetEasyChatWord - b _0811EDB2 - .pool -_0811EDB0: - ldr r0, =gText_ThreeQuestionMarks -_0811EDB2: - bl StringLength - lsls r0, 16 - lsrs r0, 16 -_0811EDBA: - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_811ED7C - - thumb_func_start sub_811EDC4 -sub_811EDC4: @ 811EDC4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r6, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - lsls r3, 16 - lsrs r3, 16 - mov r10, r3 - movs r7, 0 - cmp r7, r8 - bcs _0811EE26 - subs r0, r1, 0x1 - lsls r0, 16 - mov r9, r0 -_0811EDEE: - mov r0, r9 - lsrs r4, r0, 16 - movs r5, 0 - cmp r5, r1 - bcs _0811EE14 -_0811EDF8: - ldrh r0, [r6] - adds r6, 0x2 - str r1, [sp] - bl sub_811ED7C - adds r0, r4, r0 - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, [sp] - cmp r5, r1 - bcc _0811EDF8 -_0811EE14: - cmp r4, r10 - bls _0811EE1C - movs r0, 0x1 - b _0811EE28 -_0811EE1C: - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, r8 - bcc _0811EDEE -_0811EE26: - movs r0, 0 -_0811EE28: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_811EDC4 - - thumb_func_start sub_811EE38 -sub_811EE38: @ 811EE38 - push {r4,lr} - lsls r0, 16 - lsrs r4, r0, 16 - bl Random - ldr r2, =gEasyChatGroups - lsls r1, r4, 3 - adds r1, r2 - lsls r0, 16 - lsrs r0, 16 - ldrh r1, [r1, 0x4] - bl __umodsi3 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r4, 0 - beq _0811EE66 - cmp r4, 0x15 - beq _0811EE66 - cmp r4, 0x12 - beq _0811EE66 - cmp r4, 0x13 - bne _0811EE74 -_0811EE66: - ldr r1, =gEasyChatGroups - lsls r0, r4, 3 - adds r0, r1 - ldr r1, [r0] - lsls r0, r2, 1 - adds r0, r1 - ldrh r2, [r0] -_0811EE74: - movs r0, 0x7F - ands r0, r4 - lsls r0, 9 - ldr r1, =0x000001ff - ands r2, r1 - orrs r0, r2 - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_811EE38 - - thumb_func_start sub_811EE90 -sub_811EE90: @ 811EE90 - push {r4,lr} - lsls r0, 16 - lsrs r0, 16 - adds r4, r0, 0 - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_811EA28 - lsls r0, 24 - cmp r0, 0 - bne _0811EEB0 - ldr r0, =0x0000ffff - b _0811EEC4 - .pool -_0811EEB0: - cmp r4, 0 - beq _0811EEBC - adds r0, r4, 0 - bl sub_811EE38 - b _0811EEC0 -_0811EEBC: - bl sub_811F108 -_0811EEC0: - lsls r0, 16 - lsrs r0, 16 -_0811EEC4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_811EE90 - - thumb_func_start sub_811EECC -sub_811EECC: @ 811EECC - push {r4,r5,lr} - ldr r0, =gSpecialVar_0x8004 - ldrh r0, [r0] - cmp r0, 0x1 - beq _0811EF04 - cmp r0, 0x1 - bgt _0811EEE4 - cmp r0, 0 - beq _0811EEEE - b _0811EF58 - .pool -_0811EEE4: - cmp r0, 0x2 - beq _0811EF2C - cmp r0, 0x3 - beq _0811EF3C - b _0811EF58 -_0811EEEE: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00002bb0 - adds r5, r0, r1 - movs r2, 0x2 - b _0811EF46 - .pool -_0811EF04: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00002bbc - adds r5, r0, r1 - adds r0, r5, 0 - movs r1, 0x3 - movs r2, 0x2 - movs r3, 0x12 - bl sub_811EDC4 - lsls r0, 24 - cmp r0, 0 - beq _0811EF44 - movs r2, 0x2 - movs r3, 0x3 - b _0811EF48 - .pool -_0811EF2C: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00002bc8 - b _0811EF42 - .pool -_0811EF3C: - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, =0x00002bd4 -_0811EF42: - adds r5, r0, r1 -_0811EF44: - movs r2, 0x3 -_0811EF46: - movs r3, 0x2 -_0811EF48: - ldr r4, =gStringVar4 - adds r0, r4, 0 - adds r1, r5, 0 - bl ConvertEasyChatWordsToString - adds r0, r4, 0 - bl ShowFieldAutoScrollMessage -_0811EF58: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811EECC - - thumb_func_start sub_811EF6C -sub_811EF6C: @ 811EF6C - push {lr} - bl Random - movs r1, 0x1 - ands r1, r0 - movs r0, 0xC - cmp r1, 0 - beq _0811EF7E - movs r0, 0xD -_0811EF7E: - bl sub_811EE90 - adds r1, r0, 0 - lsls r1, 16 - lsrs r1, 16 - ldr r0, =gStringVar2 - bl CopyEasyChatWord - pop {r0} - bx r0 - .pool - thumb_func_end sub_811EF6C - - thumb_func_start sub_811EF98 -sub_811EF98: @ 811EF98 - lsls r0, 24 - lsrs r2, r0, 27 - movs r1, 0xE0 - lsls r1, 19 - ands r1, r0 - lsrs r1, 24 - ldr r0, =gSaveBlock1Ptr - ldr r0, [r0] - ldr r3, =0x00002e20 - adds r0, r3 - adds r0, r2 - ldrb r0, [r0] - asrs r0, r1 - movs r1, 0x1 - ands r0, r1 - bx lr - .pool - thumb_func_end sub_811EF98 - - thumb_func_start sub_811EFC0 -sub_811EFC0: @ 811EFC0 - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x20 - bhi _0811EFE4 - lsrs r3, r0, 27 - movs r2, 0x7 - ands r2, r1 - ldr r0, =gSaveBlock1Ptr - ldr r1, [r0] - ldr r0, =0x00002e20 - adds r1, r0 - adds r1, r3 - movs r0, 0x1 - lsls r0, r2 - ldrb r2, [r1] - orrs r0, r2 - strb r0, [r1] -_0811EFE4: - pop {r0} - bx r0 - .pool - thumb_func_end sub_811EFC0 - - thumb_func_start sub_811EFF0 -sub_811EFF0: @ 811EFF0 - push {r4,r5,lr} - movs r4, 0 - movs r5, 0 -_0811EFF6: - adds r0, r4, 0 - bl sub_811EF98 - lsls r0, 24 - cmp r0, 0 - beq _0811F008 - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_0811F008: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x20 - bls _0811EFF6 - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_811EFF0 - - thumb_func_start sub_811F01C -sub_811F01C: @ 811F01C - push {r4-r6,lr} - bl sub_811EFF0 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x21 - bne _0811F048 - b _0811F082 -_0811F02C: - adds r0, r5, 0 - bl sub_811EFC0 - ldr r0, =0x000001ff - ands r4, r0 - movs r1, 0xA0 - lsls r1, 6 - adds r0, r1, 0 - orrs r4, r0 - adds r0, r4, 0 - b _0811F084 - .pool -_0811F048: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x21 - subs r1, r4 - bl __modsi3 - lsls r0, 16 - lsrs r6, r0, 16 - movs r4, 0 -_0811F05E: - lsls r0, r4, 24 - lsrs r5, r0, 24 - adds r0, r5, 0 - bl sub_811EF98 - lsls r0, 24 - cmp r0, 0 - bne _0811F078 - cmp r6, 0 - beq _0811F02C - subs r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 -_0811F078: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x20 - bls _0811F05E -_0811F082: - ldr r0, =0x0000ffff -_0811F084: - pop {r4-r6} - pop {r1} - bx r1 - .pool - thumb_func_end sub_811F01C - - thumb_func_start sub_811F090 -sub_811F090: @ 811F090 - push {r4,r5,lr} - bl sub_811EFF0 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - bne _0811F0B4 - b _0811F0EA -_0811F0A0: - ldr r0, =0x000001ff - ands r4, r0 - movs r1, 0xA0 - lsls r1, 6 - adds r0, r1, 0 - orrs r4, r0 - adds r0, r4, 0 - b _0811F0EC - .pool -_0811F0B4: - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r5, 0 - bl __umodsi3 - lsls r0, 16 - lsrs r5, r0, 16 - movs r4, 0 -_0811F0C8: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_811EF98 - lsls r0, 24 - cmp r0, 0 - beq _0811F0E0 - cmp r5, 0 - beq _0811F0A0 - subs r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 -_0811F0E0: - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x20 - bls _0811F0C8 -_0811F0EA: - ldr r0, =0x0000ffff -_0811F0EC: - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_811F090 - - thumb_func_start sub_811F0F8 -sub_811F0F8: @ 811F0F8 - push {lr} - bl IsNationalPokedexEnabled - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_811F0F8 - - thumb_func_start sub_811F108 -sub_811F108: @ 811F108 - push {r4-r7,lr} - movs r0, 0 - bl EasyChat_GetNumWordsInGroup - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0 - bne _0811F128 - b _0811F172 -_0811F11A: - ldrh r1, [r5] - ldr r0, =0x000001ff - ands r0, r1 - b _0811F174 - .pool -_0811F128: - bl Random - lsls r0, 16 - lsrs r0, 16 - adds r1, r4, 0 - bl __umodsi3 - lsls r0, 16 - lsrs r4, r0, 16 - ldr r0, =gEasyChatGroups - ldr r5, [r0] - ldrh r7, [r0, 0x4] - movs r6, 0 - cmp r6, r7 - bcs _0811F172 -_0811F146: - ldrh r0, [r5] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0 - bl GetSetPokedexFlag - lsls r0, 24 - cmp r0, 0 - beq _0811F166 - cmp r4, 0 - beq _0811F11A - subs r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 -_0811F166: - adds r5, 0x2 - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, r7 - bcc _0811F146 -_0811F172: - ldr r0, =0x0000ffff -_0811F174: - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_811F108 - - thumb_func_start InitEasyChatPhrases -InitEasyChatPhrases: @ 811F184 - push {r4-r7,lr} - movs r2, 0 - ldr r5, =gSaveBlock1Ptr - ldr r4, =0x00002bb0 - ldr r3, =gUnknown_0859E62C -_0811F18E: - ldr r1, [r5] - lsls r0, r2, 1 - adds r1, r4 - adds r1, r0 - adds r0, r3 - ldrh r0, [r0] - strh r0, [r1] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x3 - bls _0811F18E - movs r2, 0 - ldr r5, =gSaveBlock1Ptr - ldr r4, =0x00002bbc - ldr r3, =gUnknown_0859E634 -_0811F1AE: - ldr r1, [r5] - lsls r0, r2, 1 - adds r1, r4 - adds r1, r0 - adds r0, r3 - ldrh r0, [r0] - strh r0, [r1] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x5 - bls _0811F1AE - movs r2, 0 - ldr r5, =gSaveBlock1Ptr - ldr r4, =0x00002bc8 - ldr r3, =gUnknown_0859E640 -_0811F1CE: - ldr r1, [r5] - lsls r0, r2, 1 - adds r1, r4 - adds r1, r0 - adds r0, r3 - ldrh r0, [r0] - strh r0, [r1] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x5 - bls _0811F1CE - movs r2, 0 - ldr r5, =gSaveBlock1Ptr - ldr r4, =0x00002bd4 - ldr r3, =gUnknown_0859E64C -_0811F1EE: - ldr r1, [r5] - lsls r0, r2, 1 - adds r1, r4 - adds r1, r0 - adds r0, r3 - ldrh r0, [r0] - strh r0, [r1] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x5 - bls _0811F1EE - movs r2, 0 - ldr r7, =gSaveBlock1Ptr - ldr r6, =0x00002be0 - ldr r0, =0x0000ffff - adds r5, r0, 0 -_0811F210: - movs r3, 0 - lsls r0, r2, 3 - adds r0, r2 - lsls r4, r0, 2 -_0811F218: - ldr r1, [r7] - lsls r0, r3, 1 - adds r0, r4 - adds r1, r6 - adds r1, r0 - ldrh r0, [r1] - orrs r0, r5 - strh r0, [r1] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x8 - bls _0811F218 - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0xF - bls _0811F210 - movs r2, 0 - ldr r4, =gSaveBlock1Ptr - ldr r3, =0x00002e20 - movs r1, 0 -_0811F244: - ldr r0, [r4] - adds r0, r3 - adds r0, r2 - strb r1, [r0] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x3F - bls _0811F244 - pop {r4-r7} - pop {r0} - bx r0 - .pool - thumb_func_end InitEasyChatPhrases - - thumb_func_start sub_811F28C -sub_811F28C: @ 811F28C - push {r4,lr} - ldr r4, =gUnknown_0203A120 - ldr r0, =0x00003ba4 - bl Alloc - str r0, [r4] - cmp r0, 0 - beq _0811F2B0 - bl sub_811F2D4 - bl sub_811F46C - movs r0, 0x1 - b _0811F2B2 - .pool -_0811F2B0: - movs r0, 0 -_0811F2B2: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_811F28C - - thumb_func_start sub_811F2B8 -sub_811F2B8: @ 811F2B8 - push {r4,lr} - ldr r4, =gUnknown_0203A120 - ldr r0, [r4] - cmp r0, 0 - beq _0811F2CA - bl Free - movs r0, 0 - str r0, [r4] -_0811F2CA: - pop {r4} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811F2B8 - - thumb_func_start sub_811F2D4 -sub_811F2D4: @ 811F2D4 - push {r4,r5,lr} - ldr r4, =gUnknown_0203A120 - ldr r0, [r4] - movs r5, 0 - strh r5, [r0] - movs r0, 0 - bl GetNationalPokedexCount - lsls r0, 16 - cmp r0, 0 - beq _0811F2FC - ldr r0, [r4] - ldrh r1, [r0] - adds r2, r1, 0x1 - strh r2, [r0] - lsls r1, 16 - lsrs r1, 15 - adds r0, 0x2 - adds r0, r1 - strh r5, [r0] -_0811F2FC: - movs r3, 0x1 -_0811F2FE: - ldr r0, [r4] - ldrh r2, [r0] - adds r1, r2, 0x1 - strh r1, [r0] - lsls r2, 16 - lsrs r2, 15 - adds r0, 0x2 - adds r0, r2 - strh r3, [r0] - adds r3, 0x1 - cmp r3, 0x10 - ble _0811F2FE - ldr r0, =0x00000864 @ = FLAG_SYS_GAME_CLEAR - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0811F358 - ldr r0, =gUnknown_0203A120 - ldr r2, [r0] - ldrh r0, [r2] - adds r1, r0, 0x1 - strh r1, [r2] - lsls r0, 16 - lsrs r0, 15 - adds r3, r2, 0x2 - adds r0, r3, r0 - movs r1, 0x11 - strh r1, [r0] - ldrh r0, [r2] - adds r1, r0, 0x1 - strh r1, [r2] - lsls r0, 16 - lsrs r0, 15 - adds r0, r3, r0 - movs r1, 0x12 - strh r1, [r0] - ldrh r0, [r2] - adds r1, r0, 0x1 - strh r1, [r2] - lsls r0, 16 - lsrs r0, 15 - adds r3, r0 - movs r0, 0x13 - strh r0, [r3] -_0811F358: - ldr r0, =0x00000866 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _0811F37A - ldr r0, =gUnknown_0203A120 - ldr r0, [r0] - ldrh r1, [r0] - adds r2, r1, 0x1 - strh r2, [r0] - lsls r1, 16 - lsrs r1, 15 - adds r0, 0x2 - adds r0, r1 - movs r1, 0x14 - strh r1, [r0] -_0811F37A: - bl IsNationalPokedexEnabled - cmp r0, 0 - beq _0811F398 - ldr r0, =gUnknown_0203A120 - ldr r0, [r0] - ldrh r1, [r0] - adds r2, r1, 0x1 - strh r2, [r0] - lsls r1, 16 - lsrs r1, 15 - adds r0, 0x2 - adds r0, r1 - movs r1, 0x15 - strh r1, [r0] -_0811F398: - pop {r4,r5} - pop {r0} - bx r0 - .pool - thumb_func_end sub_811F2D4 - - thumb_func_start sub_811F3AC -sub_811F3AC: @ 811F3AC - ldr r0, =gUnknown_0203A120 - ldr r0, [r0] - ldrb r0, [r0] - bx lr - .pool - thumb_func_end sub_811F3AC - - thumb_func_start sub_811F3B8 -sub_811F3B8: @ 811F3B8 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - ldr r0, =gUnknown_0203A120 - ldr r1, [r0] - ldrh r0, [r1] - cmp r2, r0 - bcs _0811F3D8 - lsls r0, r2, 1 - adds r1, 0x2 - adds r1, r0 - ldrb r0, [r1] - b _0811F3DA - .pool -_0811F3D8: - movs r0, 0x16 -_0811F3DA: - pop {r1} - bx r1 - thumb_func_end sub_811F3B8 - - thumb_func_start sub_811F3E0 -sub_811F3E0: @ 811F3E0 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r1, 24 - lsls r2, 16 - lsrs r5, r2, 16 - ldr r0, =gEasyChatGroupNamePointers - lsrs r1, 22 - adds r1, r0 - ldr r1, [r1] - adds r0, r4, 0 - bl StringCopy - adds r1, r0, 0 - subs r4, r1, r4 - lsls r4, 16 - lsrs r0, r4, 16 - cmp r0, r5 - bcs _0811F414 - movs r2, 0 -_0811F406: - strb r2, [r1] - adds r1, 0x1 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, r5 - bcc _0811F406 -_0811F414: - movs r0, 0xFF - strb r0, [r1] - adds r0, r1, 0 - pop {r4,r5} - pop {r1} - bx r1 - .pool - thumb_func_end sub_811F3E0 - - thumb_func_start sub_811F424 -sub_811F424: @ 811F424 - lsls r0, 24 - ldr r1, =gEasyChatGroupNamePointers - lsrs r0, 22 - adds r0, r1 - ldr r0, [r0] - bx lr - .pool - thumb_func_end sub_811F424 - - thumb_func_start CopyEasyChatWordPadded -@ char *CopyEasyChatWordPadded(char *dest, u16 groupIdWordIdPair, u16 minLength) -CopyEasyChatWordPadded: @ 811F434 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r1, 16 - lsrs r1, 16 - lsls r2, 16 - lsrs r5, r2, 16 - bl CopyEasyChatWord - adds r1, r0, 0 - subs r4, r1, r4 - lsls r4, 16 - lsrs r0, r4, 16 - cmp r0, r5 - bcs _0811F460 - movs r2, 0 -_0811F452: - strb r2, [r1] - adds r1, 0x1 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, r5 - bcc _0811F452 -_0811F460: - movs r0, 0xFF - strb r0, [r1] - adds r0, r1, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end CopyEasyChatWordPadded - - thumb_func_start sub_811F46C -sub_811F46C: @ 811F46C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - movs r3, 0 -_0811F47A: - ldr r2, =gEasyChatWordsByLetterPointers - lsls r1, r3, 3 - adds r0, r2, 0x4 - adds r0, r1, r0 - ldr r0, [r0] - str r0, [sp] - adds r1, r2 - ldr r7, [r1] - ldr r0, =gUnknown_0203A120 - ldr r1, [r0] - lsls r2, r3, 1 - adds r1, 0x2E - adds r1, r2 - movs r0, 0 - strh r0, [r1] - mov r10, r0 - movs r1, 0 - str r2, [sp, 0x4] - adds r0, r3, 0x1 - str r0, [sp, 0x8] - ldr r2, [sp] - cmp r1, r2 - bge _0811F530 -_0811F4A8: - ldrh r0, [r7] - ldr r2, =0x0000ffff - cmp r0, r2 - bne _0811F4FC - adds r7, 0x2 - ldrh r4, [r7] - adds r7, 0x2 - adds r0, r1, 0x1 - adds r1, r0, r4 - b _0811F4FE - .pool -_0811F4C8: - ldr r0, =gUnknown_0203A120 - ldr r2, [r0] - mov r0, r10 - lsls r1, r0, 1 - lsls r0, r3, 4 - adds r0, r3 - lsls r0, 3 - subs r0, r3 - lsls r0, 2 - adds r1, r0 - adds r0, r2, 0 - adds r0, 0x64 - adds r0, r1 - ldrh r1, [r5] - strh r1, [r0] - movs r0, 0x1 - add r10, r0 - adds r2, 0x2E - ldr r0, [sp, 0x4] - adds r2, r0 - ldrh r0, [r2] - adds r0, 0x1 - strh r0, [r2] - b _0811F526 - .pool -_0811F4FC: - movs r4, 0x1 -_0811F4FE: - movs r6, 0 - adds r1, 0x1 - mov r9, r1 - lsls r2, r4, 1 - mov r8, r2 - cmp r6, r4 - bge _0811F526 - adds r5, r7, 0 -_0811F50E: - ldrh r0, [r5] - str r3, [sp, 0xC] - bl sub_811F860 - lsls r0, 24 - ldr r3, [sp, 0xC] - cmp r0, 0 - bne _0811F4C8 - adds r5, 0x2 - adds r6, 0x1 - cmp r6, r4 - blt _0811F50E -_0811F526: - add r7, r8 - mov r1, r9 - ldr r0, [sp] - cmp r1, r0 - blt _0811F4A8 -_0811F530: - ldr r3, [sp, 0x8] - cmp r3, 0x1A - ble _0811F47A - 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_811F46C - - thumb_func_start sub_811F548 -sub_811F548: @ 811F548 - push {lr} - lsls r1, 16 - lsrs r1, 16 - cmp r0, 0 - bne _0811F55A - adds r0, r1, 0 - bl sub_811F5C4 - b _0811F560 -_0811F55A: - adds r0, r1, 0 - bl sub_811F6B8 -_0811F560: - ldr r1, =gUnknown_0203A120 - ldr r1, [r1] - ldr r2, =0x00003ba0 - adds r1, r2 - strh r0, [r1] - pop {r0} - bx r0 - .pool - thumb_func_end sub_811F548 - - thumb_func_start sub_811F578 -sub_811F578: @ 811F578 - push {lr} - lsls r0, 16 - lsrs r2, r0, 16 - ldr r0, =gUnknown_0203A120 - ldr r1, [r0] - ldr r3, =0x00003ba0 - adds r0, r1, r3 - ldrh r0, [r0] - cmp r2, r0 - bcs _0811F5A4 - lsls r0, r2, 1 - ldr r2, =0x00003984 - adds r1, r2 - adds r1, r0 - ldrh r0, [r1] - b _0811F5A6 - .pool -_0811F5A4: - ldr r0, =0x0000ffff -_0811F5A6: - pop {r1} - bx r1 - .pool - thumb_func_end sub_811F578 - - thumb_func_start sub_811F5B0 -sub_811F5B0: @ 811F5B0 - ldr r0, =gUnknown_0203A120 - ldr r0, [r0] - ldr r1, =0x00003ba0 - adds r0, r1 - ldrh r0, [r0] - bx lr - .pool - thumb_func_end sub_811F5B0 - - thumb_func_start sub_811F5C4 -sub_811F5C4: @ 811F5C4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 16 - lsrs r2, r0, 16 - ldr r1, =gEasyChatGroups - lsls r0, r2, 3 - adds r0, r1 - ldrh r3, [r0, 0x4] - mov r8, r3 - cmp r2, 0 - beq _0811F5EC - cmp r2, 0x15 - beq _0811F5EC - cmp r2, 0x12 - beq _0811F5EC - cmp r2, 0x13 - bne _0811F64C -_0811F5EC: - lsls r0, r2, 3 - adds r0, r1 - ldr r1, [r0] - movs r7, 0 - movs r5, 0 - cmp r5, r8 - bcs _0811F698 - movs r0, 0x7F - ands r0, r2 - lsls r0, 9 - mov r9, r0 - adds r4, r1, 0 - lsls r6, r2, 24 -_0811F606: - ldrh r0, [r4] - lsrs r1, r6, 24 - bl sub_811F764 - lsls r0, 24 - cmp r0, 0 - beq _0811F630 - ldr r0, =gUnknown_0203A120 - ldr r2, [r0] - lsls r0, r5, 1 - ldr r1, =0x00003984 - adds r2, r1 - adds r2, r0 - ldrh r0, [r4] - ldr r3, =0x000001ff - adds r1, r3, 0 - ands r0, r1 - mov r1, r9 - orrs r0, r1 - strh r0, [r2] - adds r5, 0x1 -_0811F630: - adds r4, 0x2 - adds r7, 0x1 - cmp r7, r8 - bcc _0811F606 - b _0811F698 - .pool -_0811F64C: - ldr r1, [r0] - movs r7, 0 - movs r5, 0 - cmp r5, r8 - bcs _0811F698 - movs r0, 0x7F - ands r0, r2 - lsls r0, 9 - mov r10, r0 - adds r6, r1, 0 - lsls r2, 24 - mov r9, r2 -_0811F664: - ldrh r4, [r6, 0x4] - adds r0, r4, 0 - mov r2, r9 - lsrs r1, r2, 24 - bl sub_811F764 - lsls r0, 24 - cmp r0, 0 - beq _0811F690 - ldr r0, =gUnknown_0203A120 - ldr r1, [r0] - lsls r0, r5, 1 - ldr r3, =0x00003984 - adds r1, r3 - adds r1, r0 - ldr r2, =0x000001ff - adds r0, r2, 0 - ands r4, r0 - mov r3, r10 - orrs r4, r3 - strh r4, [r1] - adds r5, 0x1 -_0811F690: - adds r6, 0xC - adds r7, 0x1 - cmp r7, r8 - bcc _0811F664 -_0811F698: - lsls r0, r5, 16 - lsrs r0, 16 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_811F5C4 - - thumb_func_start sub_811F6B8 -sub_811F6B8: @ 811F6B8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - lsrs r1, r0, 16 - movs r4, 0 - movs r6, 0 - ldr r3, =gUnknown_0203A120 - ldr r0, [r3] - lsls r5, r1, 1 - adds r0, 0x2E - adds r0, r5 - ldrh r0, [r0] - cmp r6, r0 - bcs _0811F718 - mov r8, r3 - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 3 - subs r0, r1 - lsls r7, r0, 2 - ldr r0, =0x00003984 - mov r12, r0 -_0811F6E6: - mov r0, r8 - ldr r3, [r0] - adds r1, r6, 0 - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - lsls r1, 1 - mov r0, r12 - adds r2, r3, r0 - adds r2, r1 - lsls r1, r4, 1 - adds r1, r7 - adds r0, r3, 0 - adds r0, 0x64 - adds r0, r1 - ldrh r0, [r0] - strh r0, [r2] - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - adds r3, 0x2E - adds r3, r5 - ldrh r3, [r3] - cmp r4, r3 - bcc _0811F6E6 -_0811F718: - adds r0, r6, 0 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - .pool - thumb_func_end sub_811F6B8 - - thumb_func_start sub_811F72C -sub_811F72C: @ 811F72C - push {r4,lr} - lsls r0, 24 - lsrs r3, r0, 24 - movs r2, 0 - ldr r0, =gUnknown_0203A120 - ldr r0, [r0] - ldrh r1, [r0] - cmp r2, r1 - bge _0811F75C - adds r4, r3, 0 - adds r3, r1, 0 - adds r1, r0, 0x2 -_0811F744: - ldrh r0, [r1] - cmp r0, r4 - bne _0811F754 - movs r0, 0x1 - b _0811F75E - .pool -_0811F754: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, r3 - blt _0811F744 -_0811F75C: - movs r0, 0 -_0811F75E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_811F72C - - thumb_func_start sub_811F764 -sub_811F764: @ 811F764 - push {r4,lr} - lsls r0, 16 - lsrs r4, r0, 16 - lsls r1, 24 - lsrs r2, r1, 24 - cmp r2, 0x15 - bhi _0811F81A - lsls r0, r2, 2 - ldr r1, =_0811F780 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .pool - .align 2, 0 -_0811F780: - .4byte _0811F7D8 - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F81A - .4byte _0811F808 - .4byte _0811F808 - .4byte _0811F80C - .4byte _0811F7EE -_0811F7D8: - adds r0, r4, 0 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0 - bl GetSetPokedexFlag - lsls r0, 24 - lsrs r0, 24 - b _0811F82C -_0811F7EE: - adds r0, r4, 0 - bl sub_811F838 - cmp r0, 0 - beq _0811F808 - adds r0, r4, 0 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0 - bl GetSetPokedexFlag -_0811F808: - movs r0, 0x1 - b _0811F82C -_0811F80C: - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_811EF98 - lsls r0, 24 - lsrs r0, 24 - b _0811F82C -_0811F81A: - ldr r1, =gEasyChatGroups - lsls r0, r2, 3 - adds r0, r1 - ldr r1, [r0] - lsls r0, r4, 1 - adds r0, r4 - lsls r0, 2 - adds r0, r1 - ldrb r0, [r0, 0x8] -_0811F82C: - pop {r4} - pop {r1} - bx r1 - .pool - thumb_func_end sub_811F764 - - thumb_func_start sub_811F838 -sub_811F838: @ 811F838 - push {lr} - lsls r0, 16 - lsrs r3, r0, 16 - movs r2, 0 - ldr r1, =gUnknown_0859E658 -_0811F842: - ldrh r0, [r1] - cmp r0, r3 - bne _0811F850 - movs r0, 0x1 - b _0811F85A - .pool -_0811F850: - adds r1, 0x2 - adds r2, 0x1 - cmp r2, 0 - beq _0811F842 - movs r0, 0 -_0811F85A: - pop {r1} - bx r1 - thumb_func_end sub_811F838 - - thumb_func_start sub_811F860 -sub_811F860: @ 811F860 - push {r4,r5,lr} - lsls r0, 16 - lsrs r5, r0, 25 - lsls r0, 7 - lsrs r4, r0, 23 - adds r0, r5, 0 - bl sub_811F72C - lsls r0, 24 - cmp r0, 0 - beq _0811F884 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_811F764 - lsls r0, 24 - lsrs r0, 24 - b _0811F886 -_0811F884: - movs r0, 0 -_0811F886: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_811F860 - - thumb_func_start InitializeEasyChatWordArray -InitializeEasyChatWordArray: @ 811F88C - push {lr} - adds r2, r0, 0 - lsls r1, 16 - ldr r0, =0xffff0000 - adds r1, r0 - lsrs r0, r1, 16 - ldr r1, =0x0000ffff - cmp r0, r1 - beq _0811F8AE - adds r3, r1, 0 -_0811F8A0: - strh r3, [r2] - adds r2, 0x2 - subs r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, r1 - bne _0811F8A0 -_0811F8AE: - pop {r0} - bx r0 - .pool - thumb_func_end InitializeEasyChatWordArray - -@void sub_811F8BC() { -@ s16* v; -@ s16* ptr; -@ v = GetSaveBlock1Field3564(); -@ for (ptr = v + 3; ptr >= v; ptr--) { -@ *ptr = -1; -@ } -@} - thumb_func_start sub_811F8BC -sub_811F8BC: @ 811F8BC - push {lr} - bl GetSaveBlock1Field3564 - ldr r1, =0x0000ffff - adds r2, r1, 0 - adds r1, r0, 0x6 -_0811F8C8: - strh r2, [r1] - subs r1, 0x2 - cmp r1, r0 - bge _0811F8C8 - pop {r0} - bx r0 - .pool - thumb_func_end sub_811F8BC - - thumb_func_start sub_811F8D8 -sub_811F8D8: @ 811F8D8 - push {r4,r5,lr} - asrs r4, r0, 9 - movs r1, 0x7F - ldr r5, =0x000001ff - ands r5, r0 - ands r4, r1 - adds r0, r4, 0 - bl sub_811EA28 - lsls r0, 24 - cmp r0, 0 - beq _0811F904 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_811F764 - lsls r0, 24 - lsrs r0, 24 - b _0811F906 - .pool -_0811F904: - movs r0, 0 -_0811F906: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_811F8D8 - - .align 2, 0 @ Don't pad with nop. |